Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/04/2012, 10:41
DickGumshoe
 
Fecha de Ingreso: enero-2012
Mensajes: 68
Antigüedad: 12 años, 10 meses
Puntos: 0
Problema al inicializar cadenas con punteros

Hola.

Estoy intentando inicializar una cadena mediante punteros, para reservar el espacio exacto.

Tengo esto, pero al comprobar si copia lo que pongo, me salen solo caracteres raros...

Código C:
Ver original
  1. void inicializarCadenas(char *cad1, char *cad2, int n)
  2. {
  3.      char c;
  4.      int j=0;
  5.      
  6.      cad1 = (char*)malloc(sizeof(char));
  7.      
  8.      while((c = getchar()) != '\n')
  9.      {
  10.         cad1[j] = c;
  11.         j++;
  12.         cad1 = (char*)realloc(cad1, (j+1) * sizeof(char));
  13.      }
  14.        
  15.      cad1[j] = '\0';
  16.      
  17. }
  18. int main()
  19. {
  20.     char *cadena1, *cadena2;
  21.     int n,i;
  22.    
  23.     inicializarCadenas(cadena1, cadena2, n);
  24.    
  25.     puts(cadena1);
  26.    
  27.     system("pause");
  28.     return 0;
  29. }

Muchas gracias!

Saludos.