Tengo un problema y pues como siempre fui algo malo para los punteros y los chars pues necesito su ayuda.
Tengo una funcion que primero:
Define un char bidimencional
char texto[10][256];
En el argumento de la funcion ay que incluir un puntero de tipo char para que ahi se compie el valor.
void funcion(char *out)
{
char text[10][256];
.....proceso.....
memcpy(out, text, sizeof(text));
}
Despues antes de llamar a la funcion pasa esto:
char *pointer;
pointer=(char *)malloc(2560);
funcion(&pointer);
Ahora, lo que necesito es lo siguiente.....
El char tiene dos dimensiones porque la primera contiene letras y el segunda palabras, es decir, text[0][0]; tiene la primer letra de la primer palabra y asi.
el roblema es que al llamar la funcion y todo, cuando quiero imprimir la palabra de esta manera, me sale un error:
puts(&pointer[palabra][0]);
...el put es es un ejemplo, uso otra funcion que funciona casi igual.....
el error:
......" el subíndice requiere una matriz o tipo de puntero"
entonces intente usar solo:
puts(&pointer[palabra]);
pero me da resultados bien extraños.
Primero me pone la palabra bien, luego me pone la palabra sin la primer letra y asi sucesivamente.
Como puedo hacer para que est no pase, y en ves de mostrarme la misma palabra con menos letra, me muestre las demas palabras.
Saludos