• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Visual C++ 2010 Express: [デバッグなしで開始)

Visual C++ 2010 Expressでのコンソール閉じる問題

このQ&Aのポイント
  • Visual C++ 2010 Expressでは、[デバッグなしで開始]を実行すると、コンソールが閉じてしまう問題があります。
  • C言語の勉強中で、Visual C++ 2010 Expressを使用していますが、コンソールが実行後に閉じてしまい、プログラムの実行結果が確認できません。
  • Visual C++ 2010 Expressで[デバッグなしで開始]を実行した後に、コンソールを閉じない方法はありますか?

質問者が選んだベストアンサー

  • ベストアンサー
  • awpem25
  • ベストアンサー率83% (5/6)
回答No.4

コンソールの立ち上がりと終了の仕方は バージョンが異なってもデバッグ無しの時も終了時は同じと思います。 2005と2010で同じ処理のプログラムを作ってデバッグなしでしてみたところ 同じように、終了したので2008だけ違う可能性は低いと思います。 ありえそうなのは、VC++ 2008でやった処理はもう一方の実行ファイルを VC++ 2008を通さずに単独で行っている可能性が高いですね VC++ 2008に通してデバッグ無しで処理なら、gets();関数がなくても 「続行するには何かキーを押しください....」と出ますので

TSMO
質問者

お礼

Visual C++ 2005でも確認して頂いて、ありがとうございました。 私も、VC++ 2008 Expressでは「続行するには何かキーを押してください...」と 表示されていたんですが。。 その後、またウェブで検索を続けていたところ、 以下のサイトで、コンソールを関連づける(?)方法のようなものが 紹介されており、私も、その設定を行うことで Visual C++ 2010 Expressでも、「続行するには何かキーを押してください...」と 表示されるようになりました。 これが正式な対応の仕方かどうかわかりませんが。。 http://social.msdn.microsoft.com/Forums/en/vcprerelease/thread/b571b1d3-0977-45a8-9b3b-901f26009977  1. Visual C ++ でプロジェクトを開く。  2. ソリューションエクスプローラーからプロジェクトを選択し、右クリック。  3. プロパティ -> 構成プロパティ -> リンカー -> システム を選択。  4. "サブシステム"に"コンソール (/SUBSYSTEM:CONSOLE)"を選択。 ご指摘頂いた通り、コマンドプロンプトを起動するはずの動作が デフォルトで設定されていなかったと考えられる、という事でしょうか。 今の私では、よくわからないのですが。。 また、別のサイトでは、gets()以外で、"system("PAUSE");" という方法も紹介されていました。 http://www.cplusplus.com/forum/articles/7312/ ご対応、ありがとうございました。

その他の回答 (4)

回答No.5
TSMO
質問者

お礼

1月20日で修正予定で、今はもう5月ですね。。 どうやらこれは不具合で、しかも修正することが すっかり忘れられちゃっている様子ですね。。。 情報ありがとうございました。

  • awpem25
  • ベストアンサー率83% (5/6)
回答No.3

補足で さっきこちらで、getsにより入力町のテストプログラム作ってみましたが 問題なく、デバッグ無しでもできました

TSMO
質問者

お礼

私も、getsで入力待ちになることを確認しました。 今度は、「デバッグ開始」でも、入力待ちになりますが、 現状の勉強には問題ないのと思うので、 gets()を入れて出力結果を確認したいと思います。 勉強目的だと、Visual C++ 2008 Expressに比べると不便ですね。 試して頂いてありがとうございました。

  • awpem25
  • ベストアンサー率83% (5/6)
回答No.2

バグがなく、getsとかで入力待ちがなければ、コマンドプロソプト以外では コンソールタイプは単独起動だと終了します。 コンソールアプリケーションは自動処理を行っていくプログラムなので どこかで、ストップを掛けておかないと戻り値まで行き終了します

TSMO
質問者

お礼

> 「コマンドプロンプト以外では」 ということは、 Visual C++ 2008 Express では、コマンドプロンプトが起動するようになっており、 Visual C++ 2010 Expressではコンソールタイプを単独起動するよう 仕様が変更された、ということみたいですね。 「デバッグなしで開始」実行時に、コマンドプロンプトを起動できるように 設定する方法を調査してみます。 ご回答ありがとうございました。

  • awpem25
  • ベストアンサー率83% (5/6)
回答No.1

[ツール]-[設定]>[上級用の設定]にすればできます

TSMO
質問者

補足

回答ありがとうございます。 [ツール]-[設定]>[上級用の設定]で、 メニューは表示されますし、 ショートカット(Ctrl + F5)も動作するのですが、 やはり実行後に、コンソールが消えてしまいます。。

関連するQ&A

専門家に質問してみよう