BohYoh.comトップページへ
C & C++ FAQ
目次

C C++ main関数の返却型は何ですか。

C
 main関数の返却型はvoid型ではなくint型です
 ホスト実行環境では、プログラムの開始処理において呼び出される関数の名前は、mainであり、引数をもたない関数

int main(void) { /* … */ }

あるいは二つの仮引数をもつ関数

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

として定義されます(仮引数の名前argcおよびargvは慣例的なものであり、他の名前でも構いません)。

C99 C++
 main関数は、上記二種類以外にも、処理系独自の方法で定義することできます。したがって、たとえばdouble型を返却するように定義することもできます。ただし、そのようなプログラムは可搬性が損なわれますので、一般的には上記二種類の方法で定義しなければなりません。


■ 根拠 ■
標準C §5.1.2.2.1 Program Startup
標準C99 §5.1.2.2.1 Program Startup
標準C++ §3.6.1 Main function

戻る

BohYoh.comロゴ