|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jun 2009
Messaggi: 5528
|
C - passaggio struct in funzione
Avendo una struct
es struct nomi { char .. char .. char ..} struct nomi stud[10]; come si fa a passare dal main questa struttura a una funzione per inserire i dati,per poi essere ovviamente ritornata si mette void(struct ...??) e come si invoca? Grazie in ancitipo |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Feb 2001
Città: Foggia
Messaggi: 2519
|
ciao,
innanzitutto indenda il codice quando lo scrivi sul forum, con il tasto # quando inserisci il post. Per quanto riguarda la tua domanda (anche se sono un po arrugginito di C): Codice:
void funzione(struct nomi *xxx) comunque puoi anche dichiarare la struct con typedef come segue: Codice:
typedef struct {campo1; campo2 } nuovotipo in questo caso chiaramente il prototipo della funzione sarà: Codice:
void funzione(nuovotipo *xxx) ![]()
__________________
mi sembra di essere tornato adolescente ai bei tempi.. che figata essere di nuovo su questo forum ![]() |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Jun 2009
Messaggi: 5528
|
intanto grazie mille,ok
però se devo passare e poi ritornare una struttura basata su un array,diciamo creo un array basato sulla struttura nel main lo passo come mi hai detto,ma nella funzione dopo l' inserimento come lo ritorno? |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Feb 2001
Città: Foggia
Messaggi: 2519
|
la funzione restituirà void, perchè passando per argomento un puntatore a struct tutto ciò che modifichi nella funzione influirà direttamente quel dato, quindi non ritorni nulla
__________________
mi sembra di essere tornato adolescente ai bei tempi.. che figata essere di nuovo su questo forum ![]() |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 19:25.