Dela via


main funktions- och programkörning

Varje C-program har en primär funktion som måste ha namnet main. Funktionen main fungerar som startpunkt för programkörning. Den styr vanligtvis programkörningen genom att dirigera anropen till andra funktioner i programmet.

Flera begränsningar gäller för funktionen main som inte gäller för andra C-funktioner. Funktionen main :

  • Det går inte att deklarera som inline.
  • Det går inte att deklarera som static.
  • Det går inte att ta adressen.
  • Det går inte att anropa från programmet.

Funktionssignaturen main

Funktionen main har ingen deklaration eftersom den är inbyggd i språket. Om det gjorde det skulle deklarationssyntaxen för main se ut så här:

int main( void );
int main( int argc, char *argv[ ] );
int main( int argc, char *argv[ ], char *envp[ ] );

Funktionen main deklareras implicit med hjälp av en av dessa signaturer. Du kan använda någon av dessa signaturer när du definierar din main funktion. Microsoft-kompilatorn tillåter main också att ha en returtyp för void när inget värde returneras. Parametrarna argv och envp som wmain ska definieras kan också definieras som typ char**. Mer information om argumenten finns i Argumentbeskrivning.

Anmärkningar

Funktioner i källprogrammet utför en eller flera specifika uppgifter. Funktionen main kan anropa dessa funktioner för att utföra sina respektive uppgifter. När main anropar en annan funktion skickas körningskontrollen till funktionen, så att körningen börjar vid den första instruktionen i funktionen. En funktion returnerar kontrollen till main när en return instruktion körs eller när slutet av funktionen har nåtts.

Du kan deklarera vilken funktion som helst, inklusive main, för att ha parametrar. Termen "parameter" eller "formell parameter" refererar till identifieraren som tar emot ett värde som skickas till en funktion. Mer information om hur du skickar argument till parametrar finns i Parametrar . När en funktion anropar en annan tar den anropade funktionen emot värden för sina parametrar från den anropande funktionen. Dessa värden kallas argument. Du kan deklarera formella parametrar till main så att den kan ta emot argument från kommandoraden med det format som visas i funktionssignaturen.

När du vill skicka information till main funktionen namnges argc parametrarna traditionellt och argv, även om C-kompilatorn inte kräver dessa namn. Om en tredje parameter skickas till mainhar den här parametern traditionellt namnet envp. Typerna för argc, argvoch envp definieras av C-språket. Du kan också deklarera argv som char** argv och envp som char** envp. Exempel senare i det här avsnittet visar hur du använder dessa tre parametrar för att komma åt kommandoradsargument. I följande avsnitt förklaras dessa parametrar.

Om koden följer Unicode-programmeringsmodellen kan du använda den Microsoft-specifika wide character-versionen av main, wmainsom programmets startpunkt. Mer information om den här wide character-versionen av mainfinns i Använda wmain.

main uppsägning

Ett program slutar vanligtvis att köras när det returnerar från eller når slutet av , även om det kan avslutas vid andra punkter i programmet av mainolika skäl. Du kanske till exempel vill tvinga programmet att avslutas när ett feltillstånd identifieras. Om du vill göra det kan du använda exit funktionen. Mer information om och ett exempel på exit användning finns i exit.

Se även

main funktions- och kommandoradsargument (C++)
Parsa C-kommandoradsargument