如何在c中检查scanf两个整数

时间:2016-03-27 12:02:13

标签: c int scanf

我有一个问题,我需要在一行中用空格扫描两个整数,所以代码看起来像这样:

scanf("%d %d",&integer1,&integer2);

在这段代码中,我需要检查是否扫描了两个整数。有人能帮我吗? 提前谢谢

1 个答案:

答案 0 :(得分:0)

默认情况下scanf()读取空间,给空间没有任何意义。如果您想要阅读两个整数scanf("%d %d",&integer1,&integer2);scanf("%d%d",&integer1,&integer2);,两者都会对您有所帮助。

接受以下输入:

1 2
12 22
3 2 5 //EOF

只有在读完两个整数后,程序才会通过。你不需要检查任何东西。

取消EOF

默认情况下,scanf返回读取的值的数量,以便使用它。

if(scanf("%d%d",&integer1,&integer2) != 2)
{
   //if more than two values are entered
   //perform some error handling
}