【发布时间】:2019-06-11 07:50:22
【问题描述】:
我无法在此 c 代码中打印计数 c。
我已经在一个有很多行的终端中尝试过。
#include<stdio.h>
main()
{
long c=0;
while(getchar()!=EOF)
++c;
printf("%ld\n",c);
}
预期结果应该是我们提供的字符。
【问题讨论】:
-
你的编译器没有发出关于使用
long cuninitialized 的警告吗? -
本地(自动)变量未初始化。它们的值是不确定的。任何血统教科书或教程或老师都应该教过你。
-
main()应该是int main(void)。为了将来参考,请在您的问题中说明您得到了什么输出。我希望您的程序会打印一些任意整数值。 (它对我“有效”,显然是因为c的初始值恰好为零。) -
我的程序没有给我编译错误。只是在终端中没有完成。我想了解 EOF 。
-
我怀疑,一旦您解决了 cmets 中指出的问题,您的问题将通过以下方式回答:stackoverflow.com/questions/1118957/c-how-to-simulate-an-eof
标签: c