【问题标题】:How to check when the expected number of inputs stops while using scanf?使用scanf时如何检查预期的输入数量何时停止?
【发布时间】:2021-01-23 07:44:08
【问题描述】:

所以有点上下文,我试图制作一个读取工作数量的代码,然后工作本身就像这样 4 1 2 3 4

事情就是这样 如果我输入作业数量为 4 然后输入3个工作, 然后由于某种原因它再次读取第三个作业。

如果发生这种情况,有什么方法可以检查并引发错误?我会比较两个值来检查它们是否相同,但两个值可以相同。

还有 我会使用一个文件让我们说 file.txt file.txt 将具有格式的作业数和作业数 4 1 2 3 4 我会使用 ./mx3

【问题讨论】:

  • 查看scanf的返回值
  • @M.M 对此怎么强调都不为过!
  • 贴一段你的代码,告诉你对它的期望,以及你在执行它时会得到什么

标签: c gcc scanf


【解决方案1】:
  1. 能否发布一些代码以便更好地理解?

我完全不明白你的问题,但我认为这可以帮助你:

scanf的返回值

here复制过去


这些函数返回成功匹配和分配的输入项的数量,该数量可能少于提供的数量,在早期匹配失败的情况下甚至为零。

如果在第一次成功转换或发生匹配失败之前到达输入结尾,则返回值 EOF。如果发生读取错误,也会返回 EOF,在这种情况下会设置流的错误指示符(参见 ferror(3)),并设置 errno 来指示错误。


(我是新手,如果我笨拙,请原谅我,并尽可能解释我以提高我的自我提高^^)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-22
    • 2015-06-28
    • 1970-01-01
    相关资源
    最近更新 更多