#include <stdio.h>
int main(int argc, char **argv) {
FILE *file = fopen(argv[1], "r");
char buf[100];
while (fgets(buf, sizeof(buf), file)) {
fprintf(stderr, "%s: unparseable line: '%s', ignored\n", argv[0], buf);
}
}
我的代码中有这个随机错误。考虑这个文件
echo 1
echo 2
echo 3
如果我要做的话
$ gcc -Wall above.c
$ ./a.out file
./a.out: unparseable line: 'echo 1
', ignored
./a.out: unparseable line: 'echo 2
', ignored
./a.out: unparseable line: 'echo 3
', ignored
为什么“',被忽略”在它自己的行中?我希望它只有3行而不是6.无论如何要修复?