main esecuzione di funzione e programma

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 è possibile prendere il suo indirizzo.
  • Non è possibile chiamare dal programma.

Firma della main funzione

La main funzione non ha una dichiarazione, perché è incorporata nella lingua. In caso affermativo, la sintassi della dichiarazione per main sarebbe 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 di void quando non viene restituito alcun valore. I argv parametri e envp da wmain definire anche come tipo char**. Per altre informazioni sugli argomenti, vedere Descrizione degli argomenti.

Commenti

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 nella 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 in main modo che possa ricevere argomenti dalla riga di comando usando il formato visualizzato nella firma della funzione.

Quando si vogliono passare informazioni alla main funzione, i parametri sono tradizionalmente denominati argc e argv, anche se il compilatore C non richiede questi nomi. In genere, se un terzo parametro viene passato a main, tale parametro è denominato envp. I tipi per argc, argve 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, wmaincome punto di ingresso del programma. Per altre informazioni su questa versione a caratteri wide di , vedere Uso wmaindi main.

main Terminazione

Un programma in genere smette di eseguire quando restituisce da o raggiunge la fine di main, anche se può terminare in altri punti del programma per vari motivi. Ad esempio, è possibile forzare la terminazione 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 di argomenti della riga di comando C++