Originariamente inviato da amlab75
ciao ragazzi, volevo sapere come in un programma si utilizza lo struct quando ad esempio devo inserire dei nomi e a questi deve corrispondere la via, il numero, il cap, ecc. Cioè supponiamo che il programma mi dice :
inserire nome. Inserisco il nome e poi mi dice:vuoi sapere in formazioni(via, cap,ecc)del nome messo?.
Credo che in questo programma dovrei utilizzare la struct in modo da riempire per ogni nome messo i relativi campi.
Codice:

struct { char via;
int numero;
int cap;
} persona;


Il mio problema è come faccio a caricare i dati di ogni persona? in modo che quando inserisco il nome mi da via, cap, ecc? Oppure dove li carico, e come li carico? Poi un'altra cosa come faccio a definire una stringa? cioè un nome (ciccio)deve essere dichiarato di tipo stringa o char?

Spero di essere stato chiaro.

Se mi potete scrivere una bozza di programma per capire come si fa
mi fareste un grande piacere.

Vi ringrazio!!
La parola "ciccio" non è un carattere, ma una stringa, quindi va definita come segue:
codice:
 char stringa[7]
Ho messo di lunghezza 7 perchè in riferimento alla parola ciccio, ci sono 6 caratteri, ma ci deve essere spazio per il terminatore.

La struttura potresti organizzarla come segue:
codice:
typedef struct {
        char *via;  /*via è un puntatore perchè non conosci a priori la lunghezza della parola */
        int numero;
        int cap;
} Info;

typedef struct {
        char *nome; /*idem per il nome*/
        Info * pInfo;
        int nPersone;
} Persona;