Ich spielte mit F # (Visual Studio 2010 Beta 1) herum und schrieb ein kleines Konsolenskript, das den Benutzer aufforderte, 2 Zahlen und einen Operator einzugeben und dann auszuführen. Es funktioniert gut, abgesehen von einem kleinen, aber lästigen Ding: manchmal werden meine Printfn Anweisungen ignoriert. Ich habe Haltepunkte im Code platziert, um zu sehen, dass dies tatsächlich der Fall ist.F # seltsames printfn Problem
Der Code-Schnipsel:
let convert (source : string) =
try System.Int32.Parse(source)
with :? System.FormatException ->
printfn "'%s' is not a number!" source;
waitForExitKey();
exit 1
let read =
printfn "Please enter a number.";
System.Console.ReadLine
let num1 : int = read() |> convert // the printfn in the read function is run...
let num2 : int = read() |> convert // ... but here is ignored
Dies ist nicht die vollständige Quelle natürlich, aber ich denke, dass genug sein werde. Wenn Sie die komplette Quelle benötigen, lassen Sie es mich wissen.
Also meine Frage ist ziemlich einfach: Was verursacht dieses Problem mit printfn? Mache ich etwas falsch?
Vielen Dank im Voraus, ShdNx
Vielen Dank! Leider war Ray schneller, also akzeptierte ich seine Antwort. Aber ich bin immer noch sehr froh, dass du das klar gestellt hast. Danke noch einmal! – ShdNx
Ich stimme zu! +1 für eine klarere Erklärung! –