低レベルのプログラマーとして、実行可能ファイルのモジュール起動コードを扱うことが多いので、"crt0" のようなコードがどのように機能するかをよく理解しています。C++ コードを書くとき、私は通常、C スタートアップ コードが を呼び出すために行うことと一致するようにmain
asを宣言しました。したがって、私は通常、この宣言を次の目的で使用します(特に Windows を対象とする場合)。extern "C"
main
main
wmain
extern "C" int main(int argv, const char *const *argv)
extern "C" int __cdecl wmain(int argv, const wchar_t *const *argv)
extern "C"
での使用は合法main
ですか? また、const char *const *
argv の型は とは対照的に合法char *[]
ですか?