Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

khi em dùng hàm gets() thì nó đếm đúng còn khi em dùng fgets() thì nó đếm thứ 1 kí tự là sao ạ , mn giải thích cho em với ạ

3 năm trước 1.294 lượt xem 2 bình luận 3 năm trước

 

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
rezarria đã bình luận 3 năm trước

vì hàm fgets khác hàm gets.

với fgets nó sẽ tính luôn \n thay vì bỏ qua như gets.

nên xâu nhận được sẽ luôn là .....\n\0.

với cách đếm của bạn là tới \0 mới dừng nên tính luôn \n.

tại sao lại khác? vì fgets là được thiết kế dùng cho file, nên nó sẽ không bỏ qua gì cả, còn gets sẽ dừng khi nhận \n.

K9 SuperAdmin, KquizAdmin, KquizAuthor đã bình luận 3 năm trước
sao lại đếm = fgets ta

Câu hỏi mới nhất