Đếm số dòng trong 1 file

em dùng hàm fgetc đọc toàn bộ file rồi xuất ra số dòng, nếu gặp ký tự ‘\n’ thì cộng vào mà sao kết quả toàn ra lớn hơn 3 :((


ai biết em sai ở đâu không ạ ? hoặc có cách khác cũng được
em rất cảm ơn ạ

Bạn cho print ra dưới dạng hex xem nó đọc cái gì nhé.

bạn kiểm tra xem file text có đặt con trỏ dưới số 1 dưới cùng đc không, cẩn thận enter bậy bạ ^^
Còn riêng về đếm dòng thì mình có cách hay hơn
string s;
int sodong = 0;
while(getline(fileIn,s))
{
sodong++;
}

Người ta đang viết C mà.

Đặt cái breakpoint vào là sáng tỏ ngay ý mà :yum:

1 Like

code mình dùng C hay C++ khác gì nhau đâu, thay string = char[] đc rồi

getline() không có trong C chuẩn (trong POSIX thì có nhưng nó không chuẩn)

`       Mình làm thế này. Ban thay thử xem kết quả thế nào :smiley:
                           do
                           {
                                ch=fgetc(database);
                                if(ch=='\n')
                                {
                                    line++;
                                }
                            }while(ch!=EOF);

tks mọi người rất nhiều

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?