Esto se debe a que el parámetro format
no es en realidad un string
. Es TextWriterFormat<'T>
y el compilador F # convierte el formato de cadena en ese tipo. Pero no funciona en las variables string
, porque el compilador no puede convertir el string
en TextWriterFormat<'T>
en tiempo de ejecución.
Si desea imprimir el contenido de la variable, ni siquiera debe intentar utilizar printfn
de esta manera, ya que la variable podría contener especificaciones de formato.
También se puede usar el formato %s
:
printfn "%s" test
O utilice el .Net Console.WriteLine()
:
Console.WriteLine test
No se olvide de añadir open System
en la parte superior del archivo si desea usa la clase Console
.
Yo añadiría que el uso de 'Console.WriteLine' en Fa # código no es idiomático, y la versión' printf' es mucho más común . –
Ah ok tiene sentido si el compilador lo convierte, supongo. Finalizado con printfn "% s" prueba – CodeMonkey
También puede hacer 'stdout.WriteLine test' donde supongo que la única ventaja es que es un char más corto y no necesita abrir' System' –