main
provádění funkcí a programů
Každý program jazyka C má primární funkci, která musí být pojmenována main
. Funkce main
slouží jako výchozí bod pro provádění programu. Obvykle řídí spuštění programu pomocí směrování volání dalších funkcí v programu.
Na funkci, která neplatí pro žádné jiné funkce jazyka main
C, platí několik omezení. Funkce main
:
- Nelze deklarovat jako
inline
. - Nelze deklarovat jako
static
. - Nemůže mít jeho adresu.
- Nelze volat z programu.
Podpis main
funkce
Funkce main
nemá deklaraci, protože je integrovaná do jazyka. Pokud ano, syntaxe deklarace by main
vypadala takto:
int main( void );
int main( int argc, char *argv[ ] );
int main( int argc, char *argv[ ], char *envp[ ] );
Funkce main
je deklarována implicitně pomocí jednoho z těchto podpisů. Při definování funkce main
můžete použít kterýkoli z těchto podpisů. Kompilátor Microsoftu také umožňuje main
návratový typ void
, pokud není vrácena žádná hodnota. Parametry argv
a envp
parametry wmain
lze také definovat jako typ char**
. Další informace o argumentech naleznete v tématu Popis argumentu.
Poznámky
Funkce v rámci zdrojového programu provádí jeden nebo více konkrétních úkolů. Funkce main
může tyto funkce volat, aby prováděla příslušné úlohy. Když main
volá jinou funkci, předá funkci ovládací prvek provádění, aby provádění začalo na prvním příkazu funkce. Funkce vrátí řízení, kdy main
return
je příkaz proveden nebo když je dosaženo konce funkce.
Můžete deklarovat libovolnou funkci včetně main
parametrů. Pojem „parametr“ nebo „formální parametr“ odkazuje na identifikátor, který přijímá hodnotu předanou funkci. Informace o předávání argumentů parametrům najdete v tématu Parametry . Když jedna funkce volá jinou, volaná funkce přijme hodnoty svých parametrů z volající funkce. Tyto hodnoty se nazývají argumenty. Formální parametry můžete deklarovat tak main
, aby mohly přijímat argumenty z příkazového řádku pomocí formátu uvedeného v podpisu funkce.
Pokud chcete funkci předat informace main
, parametry jsou tradičně pojmenované argc
a argv
, i když kompilátor jazyka C tyto názvy nevyžaduje. Tradičně, pokud je třetí parametr předán main
, tento parametr je pojmenován envp
. Typy pro argc
, argv
a envp
jsou definovány jazykem C. Můžete také deklarovat argv
jako char** argv
a envp
jako char** envp
. Příklady dále v této části ukazují, jak používat tyto tři parametry pro přístup k argumentům příkazového řádku. Následující části popisují tyto parametry.
Pokud váš kód dodržuje programovací model Unicode, můžete jako vstupní bod programu použít verzi širokého wmain
znaku main
od Microsoftu . Další informace o této širokoznační verzi main
naleznete v tématu Použití wmain
.
main
ukončení
Program obvykle přestane provádět, když se vrátí z nebo dosáhne konce main
, ačkoli může ukončit v jiných bodech programu z různých důvodů. Můžete například chtít vynutit ukončení programu, když se zjistí nějaký chybový stav. K tomu můžete použít exit
funkci. Další informace o exit
použití a příklad použití naleznete v tématu exit
.
Viz také
main
argumenty funkcí a příkazového řádku (C++)
Analýza argumentů příkazového řádku jazyka C