在这段代码中getchar()!=有什么用?

时间:2018-03-07 09:58:45

标签: getchar

在这段代码中,没有得到getchar的用处。 他们要求用户输入一个int值,我必须检查它是否有效。我了解状态,应检查是否只输入了1个值。

提前谢谢。

#include <stdio.h> 
int main(void)
{

    int x;
    int status;
    status = scanf("%i", &x);
    if ((status != 1) || (getchar() != ’\n’)){
    printf("\nUnvalid entry\n");
    return 1;
}
printf("\nValid entry\n");
return 0;
}

2 个答案:

答案 0 :(得分:1)

程序中的函数getchar()确保用户只输入一个参数。 getchar()要求输入中的下一个字符。 所以如果输入'1','2',[空格],[ENTER] getchar返回char ' ',在我们的例子中,它意味着我们有多个参数。

答案 1 :(得分:0)

getchar()基本上会检查角色。

getchar() != ’\n’检查该字符是否不是换行符。

你可以访问https://www.geeksforgeeks.org/difference-getchar-getch-getc-getche/ 从这个中获得更多