#include <stdio.h>
main()
{
int c;
while ((c = getchar()) != EOF)
putchar(c);
}
在上面的代码中,哪个字符会打破循环?
我是C的新手,请帮帮我
此外,这个错误是什么意思:
codec5.c:8:2: warning: no newline at end of file
答案 0 :(得分:1)
警告只是意味着您需要在源代码的末尾添加一个新行。将光标放在}
末尾的文件中的最后一个main()
,然后按Enter键。
如果您没有从文件加载,则需要检查特定字符以结束程序。如果将(|
)(Windows中为<
)文件传输到程序中,则程序应该结束。如果您的程序名为test.exe
且输入文件为foo.txt
,请尝试运行test.exe < foo.txt
(确保它们位于同一目录中)。
答案 1 :(得分:0)
这是stdio.h
中定义的特殊常量,表示文件末尾。
codec5.c:8:2:警告:文件末尾没有换行符
听起来你的文件末尾没有\n
:)
答案 2 :(得分:0)
通过在文件末尾添加换行符来解决错误(将光标放在}
后面并按回车键。)
我认为循环被Ctrl + Z打破了,但我不确定。