
Click above to get retro games delivered to your door ever month!
X-Hacker.org- Turbo C - <b>setbuf() control stream buffering</b>
[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
setbuf() Control Stream Buffering
#include <stdio.h>
void setbuf(stream,buffer);
FILE *stream; Pointer to file structure
char *buffer; User-allocated buffer
setbuf allows the user to control buffering, by causing the specified
'buffer' to be used for I/O buffering, instead of the automatically
allocated buffer. 'stream' must refer to an open file. If 'buffer'
is NULL, the stream is unbuffered; otherwise it is fully buffered.
'buffer' must point to a character array BUFSIZE bytes long. (BUFSIZE
is defined in <stdio.h>).
Returns: There is no return value.
Notes: 'stderr' and 'stdaux' are unbuffered by default. They
can be assigned buffers with setbuf().
-------------------------------- Example ---------------------------------
The following statements open two files and assign a user-specified
buffer to one.
#include <stdio.h>
char buf[BUFSIZE];
FILE *stream1, *stream2;
main()
{
if((stream1 = fopen("data1","r")) != NULL &&
stream2 = fopen("data2","w")) != NULL) {
setbuf(stream1,buf);
}
}
See Also: fflush() fopen() fclose() setvbuf()
Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson