Cita de: gonpiar en 4 Marzo 2012, 20:02 PMBien el enunciado esta mal o tal vez ocurrió un error al copiarlo.
Buenas , me gustaria preguntar a cualquiera que pueda resolverme esta dudilla:
Tengo la función: void funcion (char** cadena1, int pos, char *caracter)
Se indica que se debe extraer el caracter que hay en la posicion pos de la cadena char** cadena1 e insertarlo en la cadena char* caracter.
Tal como esta "cadena1" no es una cadena en el sentido de ser la dirección en memoria donde se almacena una cadena.
En su lugar es la dirección en memoria de un objeto de tipo "char *". Para explicarlo mejor siguiendo el enunciado ese fragmento seria valido extendiéndolo mas o menos así:
Código (c) [Seleccionar]
char *cad;
char *tmp;
cad = malloc(123); /* Solo por decir algo */
tmp = malloc(123); /* Solo por decir algo */
strcpy(cad, "hola");
/* ... */
funcion(&cad, 3, tmp);
Con ello la intención sera copiar (de alguna forma) el carácter 'a' en la cadena indicada por el puntero "tmp".
Pero de nuevo no tiene sentido pasar un "char **" para esa operación a menos (como ya comente) que falte algo.
Un saludo