elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problemas luego de crear una funcion que "extrae" subcadenas
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problemas luego de crear una funcion que "extrae" subcadenas  (Leído 1,643 veces)
Beginner Web


Desconectado Desconectado

Mensajes: 634


youtu.be/0YhflLRE-DA


Ver Perfil
Problemas luego de crear una funcion que "extrae" subcadenas
« en: 9 Julio 2018, 23:48 pm »

Bueno este programa tiene varios tipos de problemas, ya que no puedo mostrar por paantalla la extraccion de subcadena o asignar en otra variable y mostrarla en pantalla seguidamente lo mas cercano uqe logre fue que despues de ingresar algo por teclado me muestre la subcadena exraida.
Use cin >> ws; pero, la verdad no tengo idea porque pasa esto.

Código
  1. #include <iostream> //Sorry
  2. #include <stdlib.h> //por
  3. #include <string.h>// las
  4. #include <stdio.h> //librerias
  5.  
  6. using namespace std;
  7.  
  8. char* subcadena(char* cadena, int inicial, int final);
  9.  
  10. int main(){
  11. char materia[]="PROGRAMACION ESTRUCTURADA";
  12. cin >> ws;
  13. cout << subcadena(materia,0,11) << endl;
  14. system("pause");
  15. }
  16.  
  17. char* subcadena(char *cadena, int inicial, int final)
  18. {
  19. char *substring;
  20. int indice=0;
  21. if(inicial<0 || final>strlen(cadena)){
  22. return NULL;
  23. }
  24. else{
  25. for(int i=inicial;i<=final;i++){
  26. substring[indice]=cadena[i];
  27. indice++;
  28. }
  29. return substring;
  30. }
  31. }
  32.  

Alguna respuesta puntual? Muchas gracias  ;-)


« Última modificación: 10 Julio 2018, 04:09 am por Beginner Web » En línea

7w7
ThunderCls


Desconectado Desconectado

Mensajes: 455


Coder | Reverser | Gamer


Ver Perfil WWW
Re: Problemas luego de crear una funcion que "extrae" subcadenas
« Respuesta #1 en: 11 Julio 2018, 20:15 pm »

Código
  1. string cadena = "PROGRAMACION ESTRUCTURADA";
  2. cout << cadena.substr(0, 11) << endl;

Si por algún motivo no puedes usar std::string.substr()




« Última modificación: 11 Julio 2018, 21:17 pm por ThunderCls » En línea

-[ "…I can only show you the door. You're the one that has to walk through it." – Morpheus (The Matrix) ]-
http://reversec0de.wordpress.com
https://github.com/ThunderCls/
CalgaryCorpus


Desconectado Desconectado

Mensajes: 323


Ver Perfil WWW
Re: Problemas luego de crear una funcion que "extrae" subcadenas
« Respuesta #2 en: 12 Julio 2018, 06:44 am »

La funcion tiene que hacer una copia de los datos que recibe, y actualmente el puntero substring no apunta a nada.
Si pidieras memoria y los asignaras al puntero substring, la funcion tendra un mejor comportamiento.

Tal vez algo como:

char* substring = new char[final-inicial+1] podria ayudar.

Faltaria posiblemente poner un '\0' al final.
En línea

Aqui mi perfil en LinkedIn, invitame un cafe aqui
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines