[ C++で開発 ]

main関数

基本

プログラムがメモリにロードされ、ブートストラップ処理後最初に起動される関数。

戻り値はint型、引数はなし、あるいは2つの引数を持つかどちらかとして定義可能。

int main() { /* ... */ }
int main(int argc, char* argv[]) { /* ... */ }

main関数のreturn文を省略すると、return 0が実行されたのと同じ結果が得られる。(C++標準)

returnの戻り値は、exit()で抜けるときと同じくプログラム終了コードになる実装が多いので、<cstdlib>で定義される以下の値を使用する。

EXIT_FAILURE
EXIT_SUCCESS

処理系依存

Windows

Windowsでは、コンソールアプリケーションの場合に限り、ブートストラップ処理後にmain関数が呼ばれる。Windowsアプリケーションの場合、WinMainという異なる関数が呼ばれる。

WinMain関数

コンパイラ依存

Visual C++ 6.0

Visual C++6.0では、main関数においてreturn文の省略がコンパイルエラーとなってしまう。VC++7.0ではOK。