为什么语句getchar()!= EOF在我的代码中总是返回1?

时间:2020-01-31 11:23:56

标签: c

在我的C语言编程书中,如果我不输入真实的char,则语句 getchar()!= EOF 将返回0。但是当我实践这一原理时,我发现它并没有使根据我的结果感觉。无论我给什么字符,我的代码总是返回1。我的代码有什么问题吗?

在这里:

#include <stdio.h>

main()
{   
    printf("%d\n", getchar() != EOF);
}

1 个答案:

答案 0 :(得分:3)

无论我给什么字符,我的代码总是返回1。

这是预期的行为:如果未读到 字符,则getchar() 返回EOF。在所有其他情况下,它应返回读取的字符,其值≠{EOF