【发布时间】:2014-06-29 01:14:27
【问题描述】:
我刚开始编程,我正在使用 Codeblocks 编译器。使用此代码
long x = 0;
while(getchar() != EOF){
++x;
}
printf("%ld\n", x);
我正在尝试计算输入的字符数,但每次我运行程序时它都不会打印任何内容。
但是,这个版本
long x = 0;
while(getchar() != EOF){
++x;
printf("%ld\n", x);
}
成功打印字符数,但另一方面它计算每个字符(它向我显示 1、2、3、4 而不仅仅是 4)。
感谢您的回答。
【问题讨论】:
-
运行程序时,控制台是否显示为单独的窗口,然后在您发送 EOF 时关闭?
-
你如何发送
EOF? -
将
EOF替换为'\n'。当您输入一些字符并按回车键时,它应该会打印出正确的数字。 -
EOF 是文件结尾。通过行尾更改它,即'\n'。
-
(忽略 - 我是盲人..)
标签: c