È sbagliato il concetto: quando tu scrivi questo:
il compilatore alloca le due stringhe sullo stack e ne assegna i puntatori a vettore; ma gets non alloca un bel niente, si limita a scrivere nella locazione di memoria dove punta il puntatore che gli passi, che, essendo il tuo array non inizializzato, non si sa dove punterà. La soluzione corretta è dichiarare vettore come array di array di caratteri:codice:char * vettore[2]={"pippo","mario")
.codice:char vettore[2][80]; //Dove 80 è il numero massimo di caratteri che sei disposto ad accettare
Consiglio: non usare gets, è una funzione che rischia di causarti buffer overrun.

Rispondi quotando