Ho dei problemi con i puntatori in particolare con la funzione free():
se scrivo il seguente codice la free() restituisce invalid pointer:
void main(){
char *t;
t=(char *)malloc(10*sizeof(char));
t="pippo";
printf("%s\n",t);
free(t);
}
Mentre con la strcpy(t,"pippo") al posto di t="pippo":
void main(){
char *t;
t=(char *)malloc(10*sizeof(char));
strcpy(t,"pippo");
printf("%s\n",t);
free(t);
}
sembra che tutto funzioni, ma non riesco a capire il motivo.
grazie mille.