EOF输入跟读取的原理是什么
EOF输入和读取的原理是什么?#include stdio.hmain(){double ncfor (nc 0 getchar() ! EOF ++nc)p
EOF输入和读取的原理是什么?
#include <stdio.h>
main()
{
double nc;
for (nc = 0; getchar() != EOF; ++nc)
;
printf("%.0f\n",nc);
}
如果输入内容后不按回车直接按CTRL+Z再回车,就没有任何输出
如果输入内容先按回车再按CTRL+Z再按回车,才会有输出,不过会多出一个,应该是多计算了一个换行符
解决的方法就是。。输入内容之后按CTRL+Z,回车,再按CTRL+Z,这样就不会多出一个,但是这样做实际上手动输入了两次EOF
问题:
请问读取EOF的原理是什么。。。getchar()不是一次读取一个输入么,为什么当^Z出现在该行末尾的时候,实际已经读取到了EOF,却没有给出输出呢? EOF C
[解决办法]http://hi.baidu.com/luosiyong/item/998dbaffa6d3b15ec9f337e8
[解决办法]Ctrl + Z 只有出现在一行的行首才代表输入结束.
另外, 用 double 做循环变量还真少见.