stevenmtroy 发表于 2020-2-29 23:09:32

关于EOF

本帖最后由 stevenmtroy 于 2020-2-29 23:18 编辑

while (c != EOF)   
{
        fputc(c, fp);
        c = getchar();
}
        为什么上述代码在执行的时候输入“Ctrl + z“时无法结束输入,而是进入c = getchar()那一行要求继续输入?
        单步调试时,发现系统在读取到“Ctrl + z“时,接收到的是这样一个字符'\x1a'。

ba21 发表于 2020-2-29 23:30:14

EOF 不等于 Ctrl + z
就这么简单

stevenmtroy 发表于 2020-3-1 01:19:11

ba21 发表于 2020-2-29 23:30
EOF 不等于 Ctrl + z
就这么简单

那请问EOF如何在Win32控制台中输入?之前查找的资料都是说EOF==“Ctrl + Z”。

ba21 发表于 2020-3-1 14:33:31

stevenmtroy 发表于 2020-3-1 01:19
那请问EOF如何在Win32控制台中输入?之前查找的资料都是说EOF==“Ctrl + Z”。

。实际上 EOF 的值通常为 -1,但它依系统有所不同
页: [1]
查看完整版本: 关于EOF