如何在F#的printf格式字符串中放入文字百分号(%)?

Nik*_*ird 8 printf f# .net-4.0 f#-3.1

我想使用F#的printfn函数打印%符号.在谷歌搜索格式语法之后,这应该可以解决问题:printfn "%%".显然不是...

F#交互输出:

> printfn "%%";;
%%
val it : unit = ()
Run Code Online (Sandbox Code Playgroud)

奇怪的...

我使用F#3.1和.NET 4.5,F#交互式会话使用.NET 4.0.一样.

供参考:printfn "%"不编译(缺少格式说明符),printfn "%s" "%"是我目前的解决方法......


更新:

当我将目标F#运行时从3.1更改为3.0时,它可以正常工作.这是3.1运行时中的错误吗?

Nik*_*ird 7

如果printfn "%%"输出两个百分号(%%)而不是百分号(%),则必须将F#3.1 更新为至少3.1.1版.

如果您使用的是Visual Studio 2013,则可以通过工具→扩展和更新→更新→Visual Studio库→Visual FSharp工具执行此操作.