2024-12-01 04:51:42
EOF 的值通常为 -1,但它依系统有所不同。而ASCII代码值的范围是0~127,不可能出现-1,因此可以用EOF作为文件结束标志。
如果读入的是EOF,那么输出结果不会是笑脸才对,你最好把你写的程序贴出来看一下。
ASCII中01和02对应的是笑脸。
下面是我写的验证程序:
#include <stdio.h>
int main()
{
char c;
if ((c = getchar()) != EOF);
{
printf("%d\n", c);
printf("%c", c);
}
return 0;
}
当输入ctrl+z时,输出结果是-1和一个空字符。
你可以看看。
我用了这个程序,运行后,输入任意值,都会显示与其字符常量相对应的ascll码
ctrl+z,vc6默认为退格
不知道为何,没有求出—1
不会吧。。。我用的是VS2010。。不过应该一样才对啊。你可以参考一下我的。
运行程序后什么都没有,我输入a,求出ascii码等于97,任意键退出
我很好奇,哪里出了问题?系统不同?连接器的启动代码不同所以得出的结果不同?
#include <stdio.h>
int main()
{
char c;
c = EOF;
printf("%d\n", c);
printf("%c", c);
return 0;
}
你试着改成这样,这是直接赋值,然后输出结果查看。如果这都没办法我也不知道了。
请问EOF的值在哪,ascii码?
为什么大写?常量?
认真看我回答,我很早就说了EOF是文件结束符,是由系统规定的。它不属于ASCII码。
不能理解请百度EOF和ASCII码对照表。
非数字怎么对比,EOF明显只是几个无值变量名
只有用阿拉伯数字才能对比相等不等式啊,我不明白
a=b,ab不赋值机器根本不会识别字母
EOF 的值通常为 -1!
EOF 的值通常为 -1!
EOF 的值通常为 -1!
能不能看清楚回答再问?
具体参照C语言标准库sdtdio.h头文件:
#define EOF (-1)
在系统之中,EOF根本不是一个字符,而是当系统读取到文件结尾,所返回的一个信号值(也就是-1)
Linux中,在新的一行的开头,按下Ctrl-D,就代表EOF(如果在一行的中间按下Ctrl-D,则表示输出"标准输入"的缓存区,所以这时必须按两次Ctrl-D);Windows中,Ctrl-Z表示EOF。
'EOF'的输出因该是—1?
别的提问回答,getchar()是读取键盘第一个输入字符的ascii码,根据课本的例子,程序运行后根本没有键盘输入的功能,会直接求值
getchar()是否等于c的ascii码
有什么c语言开源的专业论坛吗,我想实战
2024-12-01 04:49:19