#include <stdio.h>
int main() {
int a, b;
while (scanf("%d%d", &a, &b) != EOF)
printf("%d\n", a + b);
return 0;
}
EOF 是 stdio.h 定義的宏,通常為 -1,不是文件中的特殊字符。EOF(信號值)。二進制文件中可能出現 0xFF 字節,但 fgetc 返回 int,將字節擴展為 0..255,與 -1 不衝突。Ctrl+D(行首),Windows 按 Ctrl+Z 發送 EOF 信號。while (!feof(fp)) 會多循環一次(feof 在讀取嘗試超過末尾後才置真)。最佳實踐:
int c = fgetc(fp);
while (c != EOF) { ...; c = fgetc(fp); }