[解決済み] 出力が表示されると、コンソールウィンドウがすぐに閉じてしまうのですが?
質問
のガイドに従ってC#を勉強しています。 MSDN .
さて、先ほど試したのは 例1 ( こちら へのリンクです。 MSDN 出力が表示されると、なぜコンソールウィンドウがすぐに閉じてしまうのでしょうか?
using System;
public class Hello1
{
public static int Main()
{
Console.WriteLine("Hello, World!");
return 0;
}
}
解決方法は?
<ブロッククオート
この問題は、Hello World プログラムが表示された後、すぐに終了してしまうことです。
なぜでしょう?
完成しているからです。
コンソールアプリケーションの実行が終了し
main
メソッドを実行すると、関連するコンソール・ウィンドウは自動的に閉じます。これは期待された動作です。
デバッグのためにウィンドウを開いたままにしたい場合は、キーが押されるのを待ってからアプリを終了してウィンドウを閉じるよう、コンピューターに指示する必要があります。
は、その
Console.ReadLine
メソッド
はその一つの方法です。この行をコードの末尾に追加します。
return
文) を使用すると、アプリケーションが終了する前にキーを押すのを待つようになります。
また、デバッガーを使用せずにアプリケーションを起動する場合は Ctrl + F5 を Visual Studio 環境から実行することができますが、これには、アプリケーションを書くときに自由に使用したいデバッグ機能を使用できない、という明らかな欠点があります。
最良の妥協点は、おそらく
Console.ReadLine
メソッドをプリプロセッサーディレクティブでラップして、アプリケーションをデバッグするときだけ使用します。次のようなものです。
#if DEBUG
Console.WriteLine("Press enter to close...");
Console.ReadLine();
#endif
また、キャッチできない例外が発生した場合、ウィンドウを開いたままにしておきたい場合もあります。そのためには
Console.ReadLine();
の中に
finally
ブロックを作成します。
#if DEBUG
try
{
//...
}
finally
{
Console.WriteLine("Press enter to close...");
Console.ReadLine();
}
#endif
関連
-
[解決済み】"出力タイプがクラスライブラリのプロジェクトは直接起動できない"
-
[解決済み】Ajax処理で「無効なJSONプリミティブ」と表示される件
-
[解決済み】ここで「要求URIに一致するHTTPリソースが見つかりませんでした」となるのはなぜですか?
-
[解決済み】Moqを使用してメソッド呼び出しを検証する
-
[解決済み】URLから画像をダウンロードする方法
-
[解決済み] .NETコンソールアプリケーションでアプリケーションのパスを取得するにはどうすればよいですか?
-
[解決済み] Visual Studioの出力ウィンドウに書き込む
-
[解決済み] .NETでコンソールアプリケーションの終了コードを指定するにはどうすればよいですか?
-
[解決済み】コンソールアプリのMainメソッドにasync修飾子を指定できない。
-
[解決済み】C#コンソールアプリケーションのコンソールウィンドウの表示/非表示について
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】GDI+、JPEG画像をMemoryStreamに変換する際にジェネリックエラーが発生しました。
-
[解決済み】Excel "外部テーブルが期待された形式ではありません。"
-
[解決済み】統合マネージドパイプラインモードで適用されないASP.NETの設定が検出された
-
[解決済み】値が期待した範囲に収まらない
-
[解決済み】MetadataException: 指定されたメタデータ・リソースをロードできない
-
[解決済み】値をNULLにすることはできません。パラメータ名:source
-
[解決済み】ランダムなブーリアンを生成する最速の方法
-
[解決済み】ユーザー設定値を別のユーザー設定値で設定する
-
[解決済み】名前 'ViewBag' が現在のコンテキストに存在しない - Visual Studio 2015
-
[解決済み] C#のコンソールアプリケーションを自動的に終了させないようにするには?重複