Definizioni di funzioni c
Una definizione di funzione specifica il nome della funzione, i tipi e il numero di parametri che prevede di ricevere e il relativo tipo restituito.Una definizione di funzione include inoltre un corpo della funzione alle dichiarazioni delle variabili locali e le istruzioni che determinano la funzione esegue.
Sintassi
unità di conversione:
esterno-dichiarazioneesterno-dichiarazione unità di conversione
esterno-dichiarazione: /* Ha consentito solo in ambito esterno (il file */)
definizione di funzionedeclaration
definizione di funzione: Il dichiaratore/* di seguito è riportato il dichiaratore di funzione */
dichiarazione-identificatori scegliereattributo-seguente sceglieredichiarazione-elenco del dichiaratore sceglierecomposto-rendiconto/* attributo-seguente è Microsoft specifico */
I parametri del prototipo sono:
dichiarazione-identificatori:
dichiarazione-identificatori dell'archiviazione-classe-identificatore sceglieredichiarazione-identificatori dell'tipo-identificatore scegliere
dichiarazione-identificatori di tipo-qualificatore scegliere
dichiarazione-elenco:
dichiarazionedichiarazione dell'dichiarazione-elenco
declarator:
puntatore sceglierediretto-dichiaratorediretto-dichiaratore: Dichiarazione di funzione/* */A
diretto-dichiaratore ( parametro-tipo-elenco ) dichiaratore stile nuova/* */diretto-dichiaratore ( identificatore-elencoscegliere**)** dichiaratore stile precedente/* */
l'elenco di parametri in una definizione utilizza questa sintassi:
parametro-tipo-elenco: /* L'elenco di parametri */
elenco di parametrielenco di parametri,…
elenco di parametri:
parametro-dichiarazioneelenco di parametri**,** parametro-dichiarazione
parametro-dichiarazione:
dichiarazione di dichiarazione-identificatoridichiaratore astratto di dichiarazione-identificatori scegliere
L'elenco di parametri in una definizione di funzione obsoleta utilizza questa sintassi:
identificatore-elenco: /* Utilizzato nelle definizioni di funzione e nelle dichiarazioni stile precedente */
identificatoreidentificatore-elenco**,** identificatore
La sintassi per il corpo della funzione è:
- composto-rendiconto: /* Il corpo della funzione */
{ declaration-elencoscegliererendiconto-elencoscegliere**}**
Gli unici identificatori di classe di archiviazione che consentono di modificare una dichiarazione di funzione sono extern e statico.extern l'identificatore significa che la funzione può essere eseguita riferimento altri file; ovvero il nome della funzione verrà esportato al linker.statico l'identificatore significa che la funzione non può fare riferimento da altri file; cioé il nome non viene esportato dal linker.Se nessuna classe di archiviazione viene visualizzato in una definizione di funzione, extern si presume.Tuttavia, la funzione è sempre visibile dal punto della definizione alla fine del file.
L'elemento facoltativo dichiarazione-identificatori e obbligatorio declarator specificare insieme il tipo restituito e il nome della funzione.declarator è una combinazione dell'identificatore di denominazione della funzione e le parentesi dopo il nome della funzione.L'elemento facoltativo attributo-seguente non terminal è una funzionalità Microsoft-specifica definita in attributi di funzione.
diretto-dichiaratore (in declarator la sintassi) specifica il nome della funzione definita e gli identificatori dei parametri.se diretto-dichiaratore include un oggetto parametro-tipo-elenco, l'elenco specifica i tipi dei parametri.Tale dichiaratore svolge anche la funzione di prototipo di funzione per le successive chiamate alla funzione.
In declaration in dichiarazione-elenco nelle definizioni di funzione non può contenere un oggetto archiviazione-classe-identificatore diverso da il registro. identificatore del tipo in dichiarazione-identificatori la sintassi può essere omesso solo se il registro la classe di archiviazione viene specificata per un valore di int tipo.
composto-rendiconto è il corpo della funzione che contiene le dichiarazioni delle variabili locali, i riferimenti agli elementi esternamente dichiarati e.
le sezioni attributi di funzione, classe di archiviazione, tipo restituito, parametrie Corpo della funzione descrivere in dettaglio i componenti della definizione di funzione.