尝试在文件中的最后一个\ n之后读取时,getc()崩溃

时间:2018-12-25 19:07:56

标签: c eof fgetc

我遇到一个问题,其中fgetc()在尝试读取流中的最后一个字符时会崩溃(没有打开文件,我正在将文本文件重定向到stdin)。在下面的代码中,对于包含单个字符和换行符的文件,它不会到达末尾的“某物”-它甚至不会返回EOF,而只是退出。

我在这里有些不知所措,真的不确定我在做什么错。可能是我不知道关键问题,但我不知道它是什么。

我确实尝试过与feof()进行核对,但没有得到解决。

int p;
while ( (p = fgetc(stdin)) != EOF ) {
    printf("%c", p);
}
printf("something.\n");

我尝试将先前的char p更改为int p,但无济于事。

0 个答案:

没有答案