X-Git-Url: https://git.saurik.com/apple/libc.git/blobdiff_plain/1f2f436a38f7ae2d39a943ad2898d8fed4ed2e58..23e20b0053d7317ce3facd3fd38db8c73c2c380a:/stdio/FreeBSD/setbuf.3?ds=sidebyside diff --git a/stdio/FreeBSD/setbuf.3 b/stdio/FreeBSD/setbuf.3 index 8f4ef0a..466d8b3 100644 --- a/stdio/FreeBSD/setbuf.3 +++ b/stdio/FreeBSD/setbuf.3 @@ -46,21 +46,37 @@ .Sh SYNOPSIS .In stdio.h .Ft void -.Fn setbuf "FILE * restrict stream" "char * restrict buf" +.Fo setbuf +.Fa "FILE *restrict stream" +.Fa "char *restrict buf" +.Fc .Ft void -.Fn setbuffer "FILE *stream" "char *buf" "int size" +.Fo setbuffer +.Fa "FILE *stream" +.Fa "char *buf" +.Fa "int size" +.Fc .Ft int -.Fn setlinebuf "FILE *stream" +.Fo setlinebuf +.Fa "FILE *stream" +.Fc .Ft int -.Fn setvbuf "FILE * restrict stream" "char * restrict buf" "int mode" "size_t size" +.Fo setvbuf +.Fa "FILE *restrict stream" +.Fa "char *restrict buf" +.Fa "int type" +.Fa "size_t size" +.Fc .Sh DESCRIPTION -The three types of buffering available are unbuffered, block buffered, -and line buffered. +Three types of buffering are available: +unbuffered, block buffered, and line buffered. When an output stream is unbuffered, information appears on the destination file or terminal as soon as written; -when it is block buffered many characters are saved up and written as a block; -when it is line buffered characters are saved up until a newline is -output or input is read from any stream attached to a terminal device +when it is block buffered, +many characters are saved up and written as a block; +when it is line buffered, +characters are saved up until a newline is output +or input is read from any stream attached to a terminal device (typically .Dv stdin ) . The function @@ -69,17 +85,16 @@ may be used to force the block out early. (See .Xr fclose 3 . ) .Pp -Normally all files are block buffered. +Normally, all files are block buffered. When the first .Tn I/O operation occurs on a file, .Xr malloc 3 -is called, -and an optimally-sized buffer is obtained. +is called and an optimally-sized buffer is obtained. If a stream refers to a terminal (as .Dv stdout -normally does) it is line buffered. +normally does), it is line buffered. The standard error stream .Dv stderr is always unbuffered. @@ -89,7 +104,7 @@ The function may be used to alter the buffering behavior of a stream. The -.Fa mode +.Fa type argument must be one of the following three macros: .Bl -tag -width _IOFBF -offset indent .It Dv _IONBF