char** lista[p]
io non ho scritto cosi , mi pare , ma char** lista;
sicuramente la matrice dovrà avere almeno una riga , poi da spezzoni sparsi di codice , intuire cosa vuoi fare è come avere la sfera di cristallo che non funziona
prima allochi spazio per una riga con malloc() , poi dovrai in qualche modo sapere se deve essere aggiunta una riga , e userai realloc()
qualcosa del genere , ma devi adattarlo alle tue esigenze specifiche
codice:
char **lista;
int contatore=0,scelta ;
lista=(char**)malloc(sizeof(char*)); //prima riga
lista[contatore]=(char*)malloc(sizeof(char)*11);//colonne
while(1)
{
printf("vuoi inserire un altro elemento 1 =si\n");
scanf("%d",&scelta);
if(scelta==1)
{
contatore++;
lista=(char**)realloc(lista,sizeof(char*)*(contatore+1));
lista[contatore]=(char*)malloc(sizeof(char)*11);
}
else
break;
}