我一直在尝试编写一个程序,该程序接受用户的整数输入并执行一些计算。发生的情况是,每隔一段时间,程序就会在没有任何输入的情况下提前结束。Scanf 和 Scanln 都遵循相同的行为。相关代码:func main() { var N int var output []int fmt.Println("Enter test cases") //This bottom line executes only every alternate time fmt.Scanf("%d", &N) testCases(N, N, output)}它打印“输入测试用例”行,程序终止。但是当我再次运行该程序时,它会继续执行。每次我尝试运行程序时,这种模式都会重复。
1 回答
跃然一笑
TA贡献1826条经验 获得超6个赞
更好地使用 bufio 包,它实现了缓冲 I/O。scanf/scanln 没有缓冲。
scanner := bufio.NewScanner(os.Stdin)
scanner.Scan()
input := scanner.Text()
- 1 回答
- 0 关注
- 136 浏览
添加回答
举报
0/150
提交
取消
