【解決方法】Msvcrtd.lib(exe_main.obj): エラー LNK2019: 未解決の外部シンボル _main が関数で参照されました "int __cdecl invoke_main(void)"

プログラミングQA


次で始まるメインプログラムがあります。

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

コンパイルは成功しましたが、ビルド時に以下のようなメッセージが表示されました。 これは、メイン プログラムが exe_main() オブジェクトによって参照される未解決のシンボルであることを意味します。 混乱してしまいました。

1>------ Rebuild All started: Project: dsim, Configuration: Debug Win32 ------
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppBuild.targets(368,5): warning MSB8004: Output Directory does not end with a trailing slash.  This build instance will add the slash as it is required to allow proper evaluation of the Output Directory.
1>  dsim.cpp
1>MSVCRTD.lib(exe_main.obj) : error LNK2019: unresolved external symbol _main referenced in function "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ)
1>.\Debug\dsim.exe : fatal error LNK1120: 1 unresolved externals

私が試したこと:

「」でググってみました

LNK2019

「しかし、すべてのケースは私の場合とは異なります。

解決策 1

おそらくプロジェクト設定のどこかに多くの理由が埋もれている可能性があります。 しかし、間違った設定を見つけるのはあなたにしかできない作業です。

最も簡単な解決策は、適切なアプリケーション タイプ (非 Unicode コンソール アプリケーションだと思います) を選択した新しいプロジェクトを作成し、作成されたファイル テンプレートを使用することです。 main 関数。 次に、既存のコードをコピーして作成したファイルに貼り付け、必要に応じて他の既存のソース ファイルとヘッダー ファイルを追加します。

解決策 2

最近同じ問題に遭遇しましたが、ファイルを再保存することで解決しました UTF-8 メモ帳を使って。

コメント

タイトルとURLをコピーしました