1. ホーム
  2. c++

[解決済み] デバッグ用にコンパイルすると、Visual Studioから「.exeが見つからない」というクレームが発生する

2022-03-12 20:53:44

質問

私は非常に単純なC++アプリケーションを持っています。

#include <stdio.h>
#include <iostream>

int main(int argc, char argv[]) {
  cout << "hi" << endl;
}

デバッグモードで初めてコンパイルすると、Visual Studio から "Unable to start program .. \Debugmyprogram.exe.Unable to start program (プログラムを開始できません) というエラーが発生します。指定されたファイルが見つかりません。

しかし、これは初めてコンパイルしているのだから当然だと思うのですが?この実行ファイルはまだ存在しないはずなのに、なぜVisual Studioはコンパイルを渋っているのでしょうか?

よろしくお願いします。

また、ビルドすると、以下のようなログが表示されます。

ビルド(Build->Build solution.)すると、こんなログが表示されます。

1>------ Build started: Project: print_digits, Configuration: Debug Win32 ------
1>Build started 12/23/2011 4:32:17 PM.
1>InitializeBuildStatus:
1>  Creating "Debug\print_digits.unsuccessfulbuild" because "AlwaysCreate" was specified.
1>FinalizeBuildStatus:
1>  Deleting file "Debug\print_digits.unsuccessfulbuild".
1>  Touching "Debug\print_digits.lastbuildstate".
1>
1>Build succeeded.
1>
1>Time Elapsed 00:00:00.08

build succeededと表示されますが、なぜか実行ファイルがビルドされていません。

どうすればいいですか?

ここでいくつか問題があります。

1) このエラーは、プログラムをコンパイルしようとしたのではなく、RUNしようとしたことに起因しています。

Unable to start program ..\Debugmyprogram.exe. The system cannot 指定されたファイルが見つかりませんでした。

2) おそらく、プログラムが見つからないのは、COMPILEに失敗したためです。

以下は、あなたのソースから得たエラーです。

tmp.cpp(5) : error C2065: 'cout' : undeclared identifier
tmp.cpp(5) : error C2297: '<<' : illegal, right operand has type 'char [3]'
tmp.cpp(5) : error C2065: 'endl' : undeclared identifier
tmp.cpp(6) : warning C4508: 'main' : function should return a value; 'void' return type assumed

これらの特定のエラーは、"using namespace std;" を追加すれば修正できるはずです。

クリーンなコンパイルができれば、デバッガを実行できるようになるはずです :)