EOF (End of File) = สัญญาณบ่งชี้จบไฟล์/อินพุต ในคอนโซลกด Ctrl+Z (Windows) หรือ Ctrl+D (Linux/Mac)
อัลกอริทึม
Step 1: เปิดไฟล์เขียน (write mode)
Step 2: อ่าน char ทีละตัว จนกว่าเจอ EOF (Ctrl+Z) เขียนลงไฟล์
Step 3: ปิดไฟล์
Step 4: เปิดไฟล์อ่าน (read mode)
Step 5: อ่าน char จากไฟล์ จนกว่าเจอ EOF พิมพ์ออกหน้าจอ
Step 6: ปิดไฟล์
โปรแกรม
#include <stdio.h>
int main() {
char ch;
FILE *fp;
fp = fopen("std1.txt", "w");
printf("Enter text then press Ctrl+Z:\n");
while ((ch = getchar()) != EOF) {
putc(ch, fp);
}
fclose(fp);
fp = fopen("std1.txt", "r");
printf("Text on the file:\n");
while ((ch = getc(fp)) != EOF) {
putchar(ch);
}
fclose(fp);
return 0;
}
ผลลัพธ์
Enter text then press Ctrl+Z:
This is EOF demo... ^Z
Text on the file:
This is EOF demo...