回答

收藏

如何从控制台中的标准输入读取?

技术问答 技术问答 254 人阅读 | 0 人回复 | 2023-09-12

我想从命令行中读取标准输入,但我的尝试以提示我输入前退出的程序结束。C# 寻找等效Console.ReadLine()。
) T. _2 z% J; A! s! f" o这是我目前拥有的:8 f# `# l, v6 j; j1 l8 C; ^& ]( f
    package mainimport  "bufio"    "fmt"    "os")func main()      reader := bufio.NewReader(os.Stdin)    fmt.Print("Enter text: ")    text,_ := reader.ReadString('\n    fmt.Println(text)    fmt.Println("Enter text: ")    text2 := ""    fmt.Scanln(text2)    fmt.Println(text2)    ln := ""    fmt.Sscanln("%v",ln)    fmt.Println(ln)}
    & H  w+ `+ ]' U5 r5 z' h
               9 v- g4 W. t' d6 o
    解决方案:                                                               
+ ?& l% e/ {' M1 F0 i6 y6 u                                                                我不确定块有什么问题。. b- a  f9 Q* b, Y$ A
    reader := bufio.NewReader(os.Stdin)fmt.Print("Enter text: ")text,_ := reader.ReadString('\n')fmt.Println(text)
    $ \6 }4 v) f' J2 H
因为它在我的机器上工作。但是,对于下一个块,您需要一个指向输入的变量指针。试着更换它fmt.Scanln(text2)为fmt.Scanln(&text2). 不要使用Sscanln,因为它会分析内存中现有的字符串,而不是标准输入的字符串。如果你想做你想做的事,请用它代替它fmt.Scanf("%s",&ln)
/ Q1 M9 X! b  c如果这仍然不起作用,你的罪魁祸首可能是一些奇怪的系统设置或缺陷 IDE。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则