Tengo un problema que no puedo solucionar, para crear una cadena se hace mediante un vector, vale? pero yo quiero un vector dinamico que mida x, y que cada x contenga una cadena. He probado con un vector bidimensional pero no se hacerlos dinamicos y tampoco como rellenar la cadena con datos que ingrese el usuaio.
char **vector_cadenas
de esta forma, tienes un puntero a puntero a char, o puntero a vector de char.
//n=numero de palabras
vector_cadenas=new char*[n]
for(i=0;i<n;i++){
longitud_palabra=preguntar_por_longitud();
vector_cadenas[i]=new char[longitud_palabra]
leer_palabra(vector_cadenas[i])
}
// se supone que
//longitud_palabra
//varia cada iteración
De esa forma, declaras cada vector de char con diferente tamaño.
Para acceder a una palabra: vector_cadenas[palabra]
Para acceder a una letra: vector_cadenas[palabra][letra]
Yo lo haria asi:
char **list;
int count;
list = NULL;
count = 0;
list = (char**)malloc(1*sizeof(char*));
list[count] = (char*) malloc(TextSize); //textsize el tamaño del texto que vayas a guardar
memset(list[count],0,strlen(list[count]));
y luego lo usas
claro, esto es algo muy tosco y burdo, necesitarias funciones que crean nuevas listas, guarden, editen o borren. Tmb que te digan cuantas tienes guardadas para saber el limite.
Suerte!