尝试在f#中编写一个简单函数,要求用户在命令行中输入
这是我的密码:尝试在f#中编写一个简单函数,要求用户在命令行中输入,f#,F#,这是我的密码: open System let collect_name = Console.Write("Enter Your name: ") let input = Console.ReadLine() printfn input + "Hello" collect_name 当我这样做的时候,我得到了一个错误。如何将输入设置为字符串并将字符串连接到f#中。我是一个彻头彻尾的傻瓜,提前感谢您的帮助。printfn函数
open System
let collect_name =
Console.Write("Enter Your name: ")
let input = Console.ReadLine()
printfn input + "Hello"
collect_name
当我这样做的时候,我得到了一个错误。如何将输入设置为字符串并将字符串连接到f#中。我是一个彻头彻尾的傻瓜,提前感谢您的帮助。printfn函数需要您想要打印的格式。例如 打印3。因为这是一个整数,您可以: 在您的情况下,您希望打印一个字符串:
printfn "%s" (input + "Hello")
你也可以这样做:
printfn "%s Hello" input
同样的结果
您可以在此处阅读所有可能的格式选项:
printfn "%s" (input + "Hello")
你也可以这样做:
printfn "%s Hello" input
同样的结果
您可以在此处阅读所有可能的格式选项:
printfn“Hello,%s.”输入
小调整:您可以通过以下方式删除额外的字符串连接:printfn“Hello,%s.”输入
您的代码还有一个小问题。将let
定义为一个值(无参数)。这意味着,它在你调用它之前就被初始化了,并且初始化了一次。看起来更像是在编写一个可以调用以获取输入的函数。使它成为让collect\u name()=…
并在某个时候将其称为collect\u name()
。这将确保您每次调用它时都对它进行计算,而不是只调用一次。您的代码还有一个小问题。将let
定义为一个值(无参数)。这意味着,它在你调用它之前就被初始化了,并且初始化了一次。看起来更像是在编写一个可以调用以获取输入的函数。使它成为让collect\u name()=…
并在某个时候将其称为collect\u name()
。这将确保每次调用它时都对其进行评估,而不是只调用一次。