main
esecuzione di funzioni e programmi
Ogni programma C ha una funzione primaria che deve essere denominata main
. La main
funzione funge da punto di partenza per l'esecuzione del programma. Generalmente, controlla l'esecuzione del programma indirizzando le chiamate alle altre funzioni del programma.
Diverse restrizioni si applicano alla main
funzione che non si applica ad altre funzioni C. La funzione main
:
- Non è possibile dichiarare come
inline
. - Non è possibile dichiarare come
static
. - Non può avere il suo indirizzo preso.
- Non è possibile chiamare dal programma.
Firma della main
funzione
La main
funzione non ha una dichiarazione, perché è incorporata nel linguaggio. In caso affermativo, la sintassi della dichiarazione per main
sarà simile alla seguente:
int main( void );
int main( int argc, char *argv[ ] );
int main( int argc, char *argv[ ], char *envp[ ] );
La main
funzione viene dichiarata in modo implicito usando una di queste firme. È possibile usare una di queste firme quando si definisce la main
funzione. Il compilatore Microsoft consente inoltre di main
avere un tipo restituito quando void
non viene restituito alcun valore. I argv
parametri e envp
da wmain
possono essere definiti anche come tipo char**
. Per altre informazioni sugli argomenti, vedere Descrizione dell'argomento.
Osservazioni:
Le funzioni nel programma di origine eseguono una o più attività specifiche. La main
funzione può chiamare queste funzioni per eseguire le rispettive attività. Quando main
chiama un'altra funzione, passa il controllo di esecuzione alla funzione, in modo che l'esecuzione inizi alla prima istruzione della funzione. Una funzione restituisce il controllo a main
quando viene eseguita un'istruzione return
o quando viene raggiunta la fine della funzione.
È possibile dichiarare qualsiasi funzione, inclusa main
, per avere parametri. Il termine "parametro" o "parametro formale" si riferisce all'identificatore che riceve un valore passato a una funzione. Per altre informazioni sul passaggio di argomenti ai parametri, vedere Parametri. Quando una funzione chiama un'altra funzione, la funzione chiamata riceve i valori per i relativi parametri dalla funzione chiamante. Questi valori sono denominati argomenti. È possibile dichiarare parametri formali a in main
modo che possa ricevere argomenti dalla riga di comando usando il formato visualizzato nella firma della funzione.
Quando si desidera passare informazioni alla main
funzione, i parametri vengono tradizionalmente denominati argc
e argv
, anche se il compilatore C non richiede questi nomi. Tradizionalmente, se un terzo parametro viene passato a main
, tale parametro è denominato envp
. I tipi per argc
, argv
e envp
sono definiti dal linguaggio C. È anche possibile dichiarare argv
come char** argv
e envp
come char** envp
. Negli esempi riportati più avanti in questa sezione viene illustrato come utilizzare questi tre parametri per accedere agli argomenti della riga di comando. Nelle sezioni seguenti vengono descritti questi parametri.
Se il codice è conforme al modello di programmazione Unicode, è possibile usare la versione a caratteri wide specifica di Microsoft di main
, wmain
come punto di ingresso del programma. Per altre informazioni su questa versione a caratteri wide di , vedere Uso wmain
di main
.
main
terminazione
Un programma in genere interrompe l'esecuzione quando restituisce o raggiunge la fine di main
, anche se può terminare in altri punti del programma per vari motivi. Ad esempio, è possibile forzare la chiusura del programma quando viene rilevata una condizione di errore. A tale scopo, è possibile usare la exit
funzione . Per altre informazioni su exit
e un esempio di utilizzo, vedere exit
.
Vedi anche
main
argomenti della riga di comando e funzione (C++)
Analisi degli argomenti della riga di comando C