Contents|Index|Previous|Next

setvbuf
[specify file or stream buffering]

SYNOPSIS 
#include <stdio.h> 
int setvbuf(FILE *fp, char *buf, int mode, size_t size);
DESCRIPTION
Use setvbuf to specify what kind of buffering you want for the file or stream identified by fp, by using one of the following values (from stdio.h) as the mode argument: Use the size argument to specify how large a buffer you wish. You can supply the buffer itself, if you wish, by passing a pointer to a suitable area of memory as buf. Otherwise, you may pass NULL as the buf argument, and setvbuf will allocate the buffer.
 

RETURNS
A 0 result indicates success; EOF, a failure (invalid mode or size can cause failure).

COMPLIANCE
Both ANSI C and the System V Interface Definition (Issue 2) require setvbuf. However, they differ on the meaning of a NULL buffer pointer: the SVID issue 2 specification says that a NULL buffer pointer requests unbuffered output. For maximum portability, avoid NULL buffer pointers.

Both specifications describe the result on failure only as a nonzero value.

Supporting OS subroutines required: close, fstat, isatty, lseek, read, sbrk, write.


Top|Contents|Index|Previous|Next