30/09/2018, 17:13

Cách dùng eof trong C?

Em có 1 hàm đọc file txt cho tới khi nào đến cuối file nên em thường dùng thế này:

FILE *fp = fopen(...);
while( ! feof(fp) )
{
fgets(...);
}

Cơ mà nãy em vô tình xem được 1 post bên stackoverflow thì nó bảo cách dùng eof này sai rồi @@ ai có thể chỉ cho em cách dùng đúng được ko ạ

Ha Gia Phat viết 19:28 ngày 30/09/2018

stackoverflow.com
MarkWarriors

Skip a line while reading a file in C

c, file-io, scanf
asked by MarkWarriors on 03:19PM - 19 Apr 13

trong cái link này dưới phần answer thứ 2 nó bảo là cách dùng này sai, vô tình đọc được trong lúc tìm cách skip vài dòng trong khi đọc file text

Gió viết 19:18 ngày 30/09/2018

Theo mình thì không cần thiết phải dùng bởi các hàm đọc file đều có thể xác định kết thúc file chình xác: getchar, fgets,fgetc,getline,fread, fscanf,read…

Ha Gia Phat viết 19:23 ngày 30/09/2018

ý em muốn là đọc từng dòng và lặp lại cái công việc đó tới cuối file á anh

Gió viết 19:29 ngày 30/09/2018

Thế thì bạn có thể dùng getline

size_t size;
char * buf=NULL;
while(getline(&buf,&size,file)!=EOF){
        puts(buf); 
}
Bài liên quan
0