Hàm setvbuf() trong C
Hàm int setvbuf(FILE *stream, char *buffer, int mode, size_t size) trong Thư viện C chuẩn xác định cách một Stream nên được đệm (buffer).
Khai báo hàm setvbuf() trong C
Dưới đây là phần khai báo cho hàm setvbuf() trong C:
int setvbuf(FILE *stream, char *buffer, int mode, size_t size)
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à bộ đệm đã được cấp phát. Nếu được thiết lập là NULL, hàm tự động cấp phát một Buffer với kích cỡ đã xác định.
mode − Xác định chế độ để đệm file.
| mode | Miêu tả |
|---|---|
| _IOFBF | Full buffering − Trên output, dữ liệu được ghi một khi buffer đầy. Trên Input, buffer được điền khi một hoạt động input được yêu cầu và buffer là trống |
| _IOLBF | Line buffering − Trên output, dữ liệu được ghi khi gặp: hoặc một ký tự newline (dòng mới) được chèn vào trong Stream hoặc khi buffer đầy. Trên Input, buffer được điền tới ký tự newline (dòng mới) tiếp theo khi một hoạt động input được yêu cầu và buffer là trống |
| _IONBF | No buffering − Không có buffer nào được sử dụng. Mỗi hoạt động I/O được ghi ngay khi có thể. Các tham số buffer và size bị bỏ qua |
size − Đây là kích cỡ bộ đệm (giá trị byte).
Trả về giá trị
Hàm này trả về 0 nếu thành công. Nếu không, hàm trả về giá trị khác 0.
Ví dụ
Chương trình C sau minh họa cách sử dụng của hàm setvbuf() trong C:
#include <stdio.h> #include <string.h> int main() { char buff[1024]; memset( buff, '\0', sizeof( buff )); fprintf(stdout, "Chuan bi buffer\n"); setvbuf(stdout, buff, _IOFBF, 1024); fprintf(stdout, "Hoc C co ban va nang cao tai QTM !!!\n"); fprintf(stdout, "Phan noi dung nay se duoc dem\n"); 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 vẫn đệm output vào trong buff tới khi nó gặp lời gọi đầu tiên tới hàm fflush(), sau đó nó lại bắt đầu đệm output.
Theo Tutorialspoint
Bài trước: Hàm setbuf() trong C
Bài tiếp: Hàm tmpfile() trong C
Bạn nên đọc
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:
Cũ vẫn chất
-

Cách cho người lạ xem Nhật ký Zalo
Hôm qua -

Cài đặt Python Package với PIP trên Windows, Mac và Linux
Hôm qua -

30+ bài thơ về rượu bia hay, thơ chế về rượu bia hài hước và bá đạo cho dân nhậu
Hôm qua -

Sửa lỗi 0x80070643 trên Windows
Hôm qua -

Stt về tiền hài hước, những câu nói hài hước về tiền nhưng thâm thúy, ‘thô mà thật’
Hôm qua -

Tổng hợp thao tác Touchpad trên Windows 10, Windows 11
Hôm qua -

Những stt hay nói về miệng lưỡi thế gian đáng để suy ngẫm
Hôm qua -

Cách chia sẻ một thư mục (folder) trên Windows 10
Hôm qua -

Những trang web đen siêu hay không thể tìm thấy trên Google
Hôm qua 3 -

Công thức tính chu vi hình tứ giác, diện tích hình tứ giác
Hôm qua 1
Học IT
Công nghệ
Microsoft Word 2013
Microsoft Word 2007
Microsoft Excel 2019
Microsoft Excel 2016
Microsoft PowerPoint 2019
Google Sheets
Lập trình Scratch
Bootstrap
Hướng dẫn
Ô tô, Xe máy