Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/02/2008, 05:34
jazzz_oks
 
Fecha de Ingreso: noviembre-2007
Mensajes: 21
Antigüedad: 17 años, 3 meses
Puntos: 0
Punteros por referencia

Buenas, tengo una duda sobre el paso de un puntero como parámetro.
Mi intención es pasar un puntero inicializado a null a una función, esta función me reserva un tamaño determinado de memoria y lo rellena con una cadena.
Ahora bien, el problema está en que en la función externa el puntero sigue apuntando a NULL y no a la memoria reservada.

Código:
/* Función externa */
char *nombre_param=NULL;
dame_nombre(nombre_funcion,param_actual,nombre_param);
sprintf(cad_aux,"\t\t<param name=\"%s\" value=\"%s\" />\n",nombre_param,$3);

/*Función dame_nombre*/

void dame_nombre(char nombre_funcion[20], int posicion, char *n_param){

n_param=(char *)malloc(strlen(p->parametros->lista_param[posicion].name)+1);
strcpy(n_param,p->parametros->lista_param[posicion].name);
}
Espero que se entienda la porción de código xq si pego el resto os puedo aburrir xD.
Gracias