Hàm setbuf() trong C

Hàm void setbuf(FILE *stream, char *buffer) trong Thư viện C chuẩn định nghĩa cách một Stream được đệm. Hàm này nên được gọi một khi file đã gắn kết với Stream đã được mở, nhưng trước khi bất cứ hoạt động input hoặc output nào đã diễn ra.

Khai báo hàm setbuf() trong C

Dưới đây là phần khai báo cho hàm setbuf() trong C:

void setbuf(FILE *stream, char *buffer)

Tham số

stream − Đây là con trỏ tới một đối tượng FILE mà nhận diện stream đã mở.

buffer − Đây là Buffer (bộ đệm) đã cấp phát. Nó nên có độ dài ít nhất là BUFSIZ byte, mà là một hằng macro để được sử dụng như là độ dài của mảng này.

Trả về giá trị

Hàm này không trả về bất cứ giá trị nào.

Ví dụ

Chương trình C sau minh họa cách sử dụng của hàm setbuf() trong C:

#include <stdio.h>

int main()
{
   char buf[BUFSIZ];

   setbuf(stdout, buf);
   puts("Hoc C co ban tai QTM !!!");

   fflush(stdout);
   return(0);
}

Biên dịch và chạy chương trình trên để cho kết quả sau. Ở đây chương trình gửi output tới STDOUT ngay trước khi nó thoát ra, nếu không thì nó vẫn tiếp tục đệm output. Bạn cũng có thể sử dụng hàm fflush() để flush (xóa hoặc chuyển ra ngoại vi) để xem kết quả.

Theo Tutorialspoint

Bài trước: Hàm rewind() trong C

Bài tiếp: Hàm setvbuf() trong C

Thứ Ba, 28/08/2018 14:50
52 👨 864
0 Bình luận
Sắp xếp theo
    ❖ Lập trình C