2013-03-09 10 views
9

Per favore dimmi come posso mettere in pausa la finestra della console quando eseguo il programma in F #.come mettere in pausa la console in linguaggio F #

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

Cosa intendi con "mettere in pausa la finestra della console"? Se vuoi fermare l'output, un 'Ctrl-Z' in un terminale Linux lo farà. ('fg' o' bg' riprende il programma.) – Riking

+0

im usando windows .. in C++ scriviamo sistema di codice ("pausa") come se fosse un modo per tenere la finestra – user1717327

+1

@ user1717327 - Penso che sia necessario migliorare la tua domanda di capacità di scrittura, le tue domande sono spesso poco chiare. Vedi http://msmvps.com/blogs/jon_skeet/archive/2010/08/29/writing-the-perfect-question.aspx –

risposta

13

Suppongo che si desideri che la console visualizzi l'output al termine dell'esecuzione del programma.

Si potrebbe mettere questa riga alla fine del frammento

Console.ReadKey() |> ignore

di 'pausa' la console in questo senso.

+2

Normalmente usiamo 'System.Console.ReadKey() |> ignore' poiché questo eliminerà un avvertimento del compilatore –

+0

@JohnPalmer - Sì, è vero, non stavo dando lo snippet completo qui, ho modificato la risposta. Grazie –

+0

thanx jhon e Srikanth il tuo migliore ... funziona – 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

Si può prendere in considerazione per avvolgere la funzione di pausa in direttive del compilatore, dal momento che probabilmente non si vuole avere lo stesso effetto nel codice di rilascio.

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