C-阅读stdin,直到Ctrl D无法正常工作



我在某个地方阅读了 while(fgets(line, sizeof(line), stdin) != NULL)应该从标准输入中读取的地方,直到按 ctrl d 代表 EOF并生成null,但是我即使我按 ctrl d ,程序仍在继续进行。一切都值得赞赏。

ctrl d 不是C语言规范中的EOF定义为EOF。 ctrl d 在操作系统级别定义了。因此,您必须在一个系统上 ctrl d 没有您期望的行为。

最新更新