読み方 : メインかんすう
main関数【main function】mainメソッド/main method
概要
main関数とは、C言語やC++言語などのプログラミング言語で、プログラムの実行が始まる起点となる特別な関数。オペレーティングシステム(OS)がプログラムを起動する際、内部のmain関数を最初に呼び出す。

プログラムは通常、複数の関数や処理のまとまりで構成される。その中でどこから実行を始めるかをOSが判断するために、「ここが入口だ」と決められた場所が必要になる。main関数はその約束事として多くの言語で採用されており、開発者はmain関数の中に最初に行わせたい処理を記述する。
CおよびC++では、main関数は int main(void) や int main(int argc, char *argv[]) という形式で定義される。後者の形式では、コマンドラインからプログラムを起動する際に渡された引数を受け取ることができる。argcは引数の個数、argvは引数の文字列配列を表す。関数の戻り値は整数型で、0を返すと正常終了、0以外を返すと異常終了としてOSに通知される慣習がある。
Javaではmain関数に相当するものとして「mainメソッド」が用いられ、通常は public static void main(String[] args) として定義される。Cとは異なりクラスの中に記述する必要があり、戻り値はvoid型である。Pythonには言語仕様としてのmain関数は存在しないが、if __name__ == "__main__": という記法を用いることで、スクリプトとして直接実行された場合にのみ動く処理を分けて書く慣習が広く定着している。
組み込みシステムや一部のフレームワークでは、main関数がライブラリ側にあらかじめ用意されており、開発者が直接記述しない構成をとる場合もある。この場合、フレームワークが内部でmain関数を管理し、開発者は別途定められた初期化処理やイベントハンドラを実装する形になる。