Usavi
struct s * p;
ma la struttura 's' non era dichiarata.
codice:#include <stdlib.h> #include <stdio.h> struct persona { int eta; int peso; }; int main() { struct persona *p, *persone[20]; int i; for (i=0; i<20; i++) persone[i] = NULL; // allocazione dinamica di una persona p = (struct persona*)malloc(sizeof(struct persona)); p->eta=20; p->peso=65; persone[5] = p; // così il 5° elemento dell'array punta alla persona creata // stessa cosa ma aggiungo una nuova persona all'8° elemento p = (struct persona*)malloc(sizeof(struct persona)); p->eta=50; p->peso=75; persone[8] = p; // stampa della lista delle persone for (i=0; i<20; i++) if (persone[i] == NULL) printf("%2d : NULL\n", i); else printf("%2d : eta=%d, peso=%d\n", i, persone[i]->eta, persone[i]->peso); return 0; }

