2013-03-09 4 views
9

F#でプログラムを実行するときにコンソールウィンドウを一時停止する方法を教えてください。F#言語でコンソールを一時停止する方法

open System 
let myList = [0..9] 
let myFunction = 
for n in myList do 
    Console.WriteLine(n) 
myFunction 
+0

「コンソールウィンドウを一時停止する」とはどういう意味ですか?出力を停止したい場合は、Linux端末で 'Ctrl-Z 'を実行します。 ( 'fg'または' bg'がプログラムを再開します) – Riking

+0

私はC++でウィンドウを使用しています。そのような方法でコードシステム( "一時停止")を書くとウィンドウを保持する方法があります – user1717327

+1

@ user1717327 - あなたの質問を書くスキル、あなたの質問はしばしば不明です。 http://msmvps.com/blogs/jon_skeet/archive/2010/08/29/writing-the-perfect-question.aspx –

答えて

13

私は、プログラムの実行が終了した後にコンソールに出力を表示させたいと思っています。

あなたは「一時停止」にスニペット

Console.ReadKey() |> ignore

の終わりにその意味でコンソールをこの行を入れることができます。

+2

を参照してください。これは通常、 'System.Console.ReadKey()|> ignore'を使用します。コンパイラの警告 –

+0

@JohnPalmer - はい、それは本当です、私はここに完全なスニペットを与えていなかった、答えを編集しました。お返事ありがとう –

+0

ありがとうございましたjhonとSrikanthあなたの最高..働いて – user1717327

1
// When running in debug mode and using Visual Studio to run the program, 
// one may miss the results as the program runs to the end and exists. 
// Since running normally, i.e. Visual Studio Ctrl-F5, will add an pause 
// automatically the pause is only shown when in debug mode. 
let pause() = 
    match System.Diagnostics.Debugger.IsAttached with 
    | true -> 
     printfn "\nPress any key to continue." 
     System.Console.ReadKey(true) |> ignore 
    | false ->() 

pause() 
1

あなたはおそらくリリースコードで同じ効果を持っている必要はありませんから、コンパイラディレクティブでポーズ機能をラップするために検討することができます。

(* your code here *) 
#if DEBUG 
System.Console.ReadKey(true) |> ignore 
#endif