gpt4 book ai didi

c - 如何防止 scanf() 在用户按下回车键时终止?

转载 作者:太空宇宙 更新时间:2023-11-04 00:35:39 24 4
gpt4 key购买 nike

如果按下回车键,scanf() 将停止接受输入。我尝试了很多方法:将数据更改为字符串并将其与 null 进行比较,与 ASCII 进行比较。但是,我无法阻止 scanf 在用户按下 enter 时终止。

最佳答案

  1. 使用fgets 读取一行文本。
  2. 如果 fgets 能够无误地读取该行,请使用 sscanf 从该行读取数字。
  3. 如果 sscanf 成功,则使用该号码。否则,转到错误处理代码。

char line[LINE_SIZE];
if ( fgets(line, LINE_SIZE, stdin) != NULL )
{
int number;
if ( sscanf(line, "%d", &number) == 1 )
{
// Use the number
}
else
{
// Deal with error
}
}

关于c - 如何防止 scanf() 在用户按下回车键时终止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38924918/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com