Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/11/2012, 17:25
Avatar de ZeKi
ZeKi
 
Fecha de Ingreso: noviembre-2012
Ubicación: Jaén
Mensajes: 61
Antigüedad: 12 años
Puntos: 6
Respuesta: Duda malloc, reserva dinámica de memoria

Primeramente, es obvio que si haces el free(palabra2); no va a funcionar puesto que estás liberando el puntero que guarda la palabra duplicada (recordemos que lo que le estamos pasando a la función es un puntero, no una copia) por lo que todo lo que hagas con ese puntero dentro de la función se mantendrá a la salida.

Luego el tema de *palabra2 en la reserva de memoria. Tienes que usar el asterisco en la asignación del malloc debido a que de esta forma le indicas al compilador el tamaño que tiene lo que está apuntando el puntero, si no lo usas estarías trabajando con la propia variable puntero y no con lo que apunta.