在这段代码中,没有得到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;
}
答案 0 :(得分:1)
程序中的函数getchar()
确保用户只输入一个参数。
getchar()
要求输入中的下一个字符。
所以如果输入'1','2',[空格],[ENTER]
getchar返回char ' '
,在我们的例子中,它意味着我们有多个参数。
答案 1 :(得分:0)
getchar()
基本上会检查角色。
getchar() != ’\n’
检查该字符是否不是换行符。
你可以访问https://www.geeksforgeeks.org/difference-getchar-getch-getc-getche/ 从这个中获得更多