sempre nell'argomento delle liste e altri tipi astratti.. se io ho una cosa del genere:
dov'è che sbaglio?? perche nn riesco a copiare i valori corretti passati in input (prova, 6) nei campi del nodo n ?? suppongo che sbagli qualcosa al livello di puntatori..ma non mi pare d vedere errori...codice:typedef struct { char *nome; int id; } nodo; int nuovo_nodo(nodo *n, char *name, int x) { printf("creato nuovo nodo\n"); n = (nodo*)malloc(sizeof(nodo)); n->nome = (char *)malloc(sizeof(char) * 50); n->nome = strcpy(n->nome,name); n->id = x; return 0; } int main() { nodo n; int prova; prova = nuovo_nodo(&n,"prova",6); printf("nome del nodo: %s\tid: %d\n",n.nome,n.id); return 0; }
(PS: le funzioni devono necessariamente tornare valori int)

Rispondi quotando