2013-03-09 9 views
9

Proszę mi powiedzieć, jak mogę wstrzymać okno konsoli podczas uruchamiania programu w F #.jak zatrzymać konsolę w języku F #

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

Co masz na myśli, "wstrzymać okno konsoli"? Jeśli chcesz zatrzymać wyjście, zrobi to 'Ctrl-Z' w terminalu Linux. ('fg' lub' bg' wznawia działanie programu.) – Riking

+0

im używając windows .. w C++ piszemy system kodu ("pauza") jak to jest jakikolwiek sposób na przytrzymanie okna – user1717327

+1

@ user1717327 - Myślę, że musisz poprawić twoje umiejętności pisania pytań, twoje pytania są często niejasne. Zobacz http://msmvps.com/blogs/jon_skeet/archive/2010/08/29/writing-the-perfect-question.aspx –

Odpowiedz

13

Zgaduję, że chcesz, aby konsola wyświetlała dane wyjściowe po zakończeniu wykonywania programu.

Można umieścić tę linię na końcu fragmentu

Console.ReadKey() |> ignore

do „pauza” konsoli w tym sensie.

+2

Zwykle używamy 'System.Console.ReadKey() |> ignore', ponieważ to wyeliminuje ostrzeżenie kompilatora –

+0

@JohnPalmer - Tak, to prawda, nie podawałem tutaj kompletnego fragmentu, zredagowałem odpowiedź. Dzięki –

+0

thanx jhon i Srikanth swoje najlepsze .. jego pracy – 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

Można rozważyć zawinąć funkcję pauzy w dyrektyw kompilatora, ponieważ prawdopodobnie nie chce mieć taki sam skutek w kodzie uwalnianiu.

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