Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Struct
Forum - C/C++ - Struct

Avatar
Pitagora (Member)
Expert


Messaggi: 367
Iscritto: 12/06/2010

Segnala al moderatore
Postato alle 22:25
Lunedì, 12/07/2010
Salve,
non ho capito bene le strutture in C. So che le strutture possono racchiudere più elementi anche di diverso tipo. Non ho capito solamente l'istanza di una struttura. Esempio:

Codice sorgente - presumibilmente C/C++

  1. struct impiegato {
  2.           char nome[22];
  3.           char cognome[22];
  4. } lavoro; /* a che serve: lavoro ? */



Yep, I came back :P
PM Quote
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2763
Iscritto: 21/09/2007

Segnala al moderatore
Postato alle 22:55
Lunedì, 12/07/2010
Testo quotato

Postato originariamente da Pitagora:

Salve,
non ho capito bene le strutture in C. So che le strutture possono racchiudere più elementi anche di diverso tipo. Non ho capito solamente l'istanza di una struttura. Esempio:

Codice sorgente - presumibilmente C/C++

  1. struct impiegato {
  2.           char nome[22];
  3.           char cognome[22];
  4. } lavoro; /* a che serve: lavoro ? */




mi sa che quella dichiarazione è a metà tra due modi diversi:

Codice sorgente - presumibilmente C/C++

  1. struct lavoro {
  2.     char nome[22];
  3.     char cognome[22];
  4. };



e

Codice sorgente - presumibilmente C++

  1. typedef struct impiegato {
  2.     char nome[22];
  3.     char cognome[22];
  4. } lavoro;



il primo metodo è C++ il secondo è C.

quello che appare dopo la } è l'alias del tipo vero e proprio. quindi sia in C++ che in C scrivi

lavoro lav;

lav.nome
lav.cognome



Ingegnere Informatico
https://ldlagency.it
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5475
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 10:59
Martedì, 13/07/2010
Testo quotato

Postato originariamente da Pitagora:

Salve,
non ho capito bene le strutture in C. So che le strutture possono racchiudere più elementi anche di diverso tipo. Non ho capito solamente l'istanza di una struttura. Esempio:

Codice sorgente - presumibilmente C/C++

  1. struct impiegato {
  2.           char nome[22];
  3.           char cognome[22];
  4. } lavoro; /* a che serve: lavoro ? */




Un attimo ... o HeDo sì è confuso o non ho capito la sua risposta.

In questo caso

lavoro

è una variabile di tipo struct impiegato.

E' come se avessi scritto

struct impiegato {
          char nome[22];
          char cognome[22];
};

struct impiegato lavoro;

e quindi utilizzabile con

lavoro.nome
lavoro.cognome

Altra cosa è utilizzare il typedef, in cui si crea un nuovo tipo di dati.


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
PM Quote
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2763
Iscritto: 21/09/2007

Segnala al moderatore
Postato alle 11:06
Martedì, 13/07/2010

si sorry son fuso, è come dichiarare già un'istanza di quella struttura nella sua dichiarazione... vedi cosa succede a fare 10 ore di ripetizioni di info1 alla settimana su C, mi vanno insieme le cose :D


Ingegnere Informatico
https://ldlagency.it
PM Quote
Avatar
Pitagora (Member)
Expert


Messaggi: 367
Iscritto: 12/06/2010

Segnala al moderatore
Postato alle 20:42
Martedì, 13/07/2010
ok grazie ragazzi ho capito !!


Yep, I came back :P
PM Quote