]> git.saurik.com Git - apple/libc.git/blobdiff - stdio/stdio.3
Libc-320.tar.gz
[apple/libc.git] / stdio / stdio.3
diff --git a/stdio/stdio.3 b/stdio/stdio.3
deleted file mode 100644 (file)
index 59fd492..0000000
+++ /dev/null
@@ -1,297 +0,0 @@
-.\" Copyright (c) 1990, 1991, 1993
-.\"    The Regents of the University of California.  All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\"    notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\"    notice, this list of conditions and the following disclaimer in the
-.\"    documentation and/or other materials provided with the distribution.
-.\" 3. All advertising materials mentioning features or use of this software
-.\"    must display the following acknowledgement:
-.\"    This product includes software developed by the University of
-.\"    California, Berkeley and its contributors.
-.\" 4. Neither the name of the University nor the names of its contributors
-.\"    may be used to endorse or promote products derived from this software
-.\"    without specific prior written permission.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.\"     @(#)stdio.3    8.7 (Berkeley) 4/19/94
-.\" $FreeBSD: src/lib/libc/stdio/stdio.3,v 1.18 2001/10/01 16:08:59 ru Exp $
-.\"
-.Dd April 19, 1994
-.Dt STDIO 3
-.Os
-.Sh NAME
-.Nm stdio
-.Nd standard input/output library functions
-.Sh LIBRARY
-.Lb libc
-.Sh SYNOPSIS
-.In stdio.h
-.Vt FILE *stdin ;
-.Vt FILE *stdout ;
-.Vt FILE *stderr ;
-.Sh DESCRIPTION
-The standard
-.Tn I/O
-library provides a simple and efficient buffered stream
-.Tn I/O
-interface.
-Input and output is mapped into logical data streams
-and the physical
-.Tn I/O
-characteristics are concealed.
-The functions and macros are listed
-below; more information is available from the individual man pages.
-.Pp
-A stream is associated with an external file (which may be a physical
-device) by
-.Em opening
-a file, which may involve creating a new file.
-Creating an
-existing file causes its former contents to be discarded.
-If a file can support positioning requests (such as a disk file, as opposed
-to a terminal) then a
-.Em file position indicator
-associated with the stream is positioned at the start of the file (byte
-zero), unless the file is opened with append mode.
-If append mode
-is used, the position indicator will be placed at the end-of-file.
-The position indicator is maintained by subsequent reads, writes
-and positioning requests.
-All input occurs as if the characters
-were read by successive calls to the
-.Xr fgetc 3
-function; all output takes place as if all characters were
-written by successive calls to the
-.Xr fputc 3
-function.
-.Pp
-A file is disassociated from a stream by
-.Em closing
-the file.
-Output streams are flushed (any unwritten buffer contents are transferred
-to the host environment) before the stream is disassociated from the file.
-The value of a pointer to a
-.Dv FILE
-object is indeterminate (garbage) after a file is closed.
-.Pp
-A file may be subsequently reopened, by the same or another program
-execution, and its contents reclaimed or modified (if it can be repositioned
-at the start).  If the main function returns to its original caller, or
-the
-.Xr exit 3
-function is called, all open files are closed (hence all output
-streams are flushed) before program termination.  Other methods
-of program termination may not close files properly and hence
-buffered output may be lost.  In particular,
-.Xr _exit 2
-does not flush stdio files.  Neither does an exit due to a signal.
-Buffers are flushed by
-.Xr abort 3
-as required by POSIX, although previous implementations did not.
-.Pp
-This implementation makes no distinction between
-.Dq text
-and
-.Dq binary
-streams.
-In effect, all streams are binary.
-No translation is performed and no extra padding appears on any stream.
-.Pp
-At program startup, three streams are predefined and need not be
-opened explicitly:
-.Bl -bullet -compact -offset indent
-.It
-.Em standard input
-(for reading conventional input),
-.It
-.Em standard output
-(for writing conventional output), and
-.It
-.Em standard error
-(for writing diagnostic output).
-.El
-These streams are abbreviated
-.Em stdin , stdout
-and
-.Em stderr .
-Initially, the standard error stream
-is unbuffered; the standard input and output streams are
-fully buffered if and only if the streams do not refer to
-an interactive or
-.Dq terminal
-device, as determined by the
-.Xr isatty 3
-function.
-In fact,
-.Em all
-freshly-opened streams that refer to terminal devices
-default to line buffering, and
-pending output to such streams is written automatically
-whenever such an input stream is read.
-Note that this applies only to
-.Dq "true reads" ;
-if the read request can be satisfied by existing buffered data,
-no automatic flush will occur.
-In these cases,
-or when a large amount of computation is done after printing
-part of a line on an output terminal, it is necessary to
-.Xr fflush 3
-the standard output before going off and computing so that the output
-will appear.
-Alternatively, these defaults may be modified via the
-.Xr setvbuf 3
-function.
-.Pp
-The
-.Nm
-library is a part of the library
-.Nm libc
-and routines are automatically loaded as needed by the C compiler.
-The
-.Tn SYNOPSIS
-sections of the following manual pages indicate which include files
-are to be used, what the compiler declaration for the function
-looks like and which external variables are of interest.
-.Pp
-The following are defined as macros;
-these names may not be re-used
-without first removing their current definitions with
-.Dv #undef :
-.Dv BUFSIZ ,
-.Dv EOF ,
-.Dv FILENAME_MAX ,
-.Dv FOPEN_MAX ,
-.Dv L_cuserid ,
-.Dv L_ctermid ,
-.Dv L_tmpnam ,
-.Dv NULL ,
-.Dv P_tmpdir ,
-.Dv SEEK_CUR ,
-.Dv SEEK_END ,
-.Dv SEEK_SET ,
-.Dv TMP_MAX ,
-.Dv clearerr ,
-.Dv feof ,
-.Dv ferror ,
-.Dv fileno ,
-.Dv fropen ,
-.Dv fwopen ,
-.Dv getc ,
-.Dv getchar ,
-.Dv putc ,
-.Dv putchar ,
-.Dv stderr ,
-.Dv stdin ,
-.Dv stdout ,
-.Dv vfscanf .
-Function versions of the macro functions
-.Fn clearerr ,
-.Fn feof ,
-.Fn ferror ,
-.Fn fileno ,
-.Fn getc ,
-.Fn getchar ,
-.Fn putc ,
-and
-.Fn putchar
-exist and will be used if the macro
-definitions are explicitly removed.
-.Sh SEE ALSO
-.Xr close 2 ,
-.Xr open 2 ,
-.Xr read 2 ,
-.Xr write 2
-.Sh BUGS
-The standard buffered functions do not interact well with certain other
-library and system functions, especially
-.Xr vfork 2 .
-.Sh STANDARDS
-The
-.Nm
-library conforms to
-.St -isoC .
-.Sh LIST OF FUNCTIONS
-.Bl -column "Description"
-.It Sy "Function       Description"
-.It "asprintf  formatted output conversion"
-.It "clearerr  check and reset stream status"
-.It "fclose    close a stream"
-.It "fdopen    stream open functions"
-.It "feof      check and reset stream status"
-.It "ferror    check and reset stream status"
-.It "fflush    flush a stream"
-.It "fgetc     get next character or word from input stream"
-.It "fgetln    get a line from a stream"
-.It "fgetpos   reposition a stream"
-.It "fgets     get a line from a stream"
-.It "fileno    check and reset stream status"
-.It "fopen     stream open functions"
-.It "fprintf   formatted output conversion"
-.It "fpurge    flush a stream"
-.It "fputc     output a character or word to a stream"
-.It "fputs     output a line to a stream"
-.It "fread     binary stream input/output"
-.It "freopen   stream open functions"
-.It "fropen    open a stream"
-.It "fscanf    input format conversion"
-.It "fseek     reposition a stream"
-.It "fsetpos   reposition a stream"
-.It "ftell     reposition a stream"
-.It "funopen   open a stream"
-.It "fwopen    open a stream"
-.It "fwrite    binary stream input/output"
-.It "getc      get next character or word from input stream"
-.It "getchar   get next character or word from input stream"
-.It "gets      get a line from a stream"
-.It "getw      get next character or word from input stream"
-.It "mkdtemp   create unique temporary file"
-.It "mkstemp   create unique temporary file"
-.It "mktemp    create unique temporary file"
-.It "perror    system error messages"
-.It "printf    formatted output conversion"
-.It "putc      output a character or word to a stream"
-.It "putchar   output a character or word to a stream"
-.It "puts      output a line to a stream"
-.It "putw      output a character or word to a stream"
-.It "remove    remove directory entry"
-.It "rewind    reposition a stream"
-.It "scanf     input format conversion"
-.It "setbuf    stream buffering operations"
-.It "setbuffer stream buffering operations"
-.It "setlinebuf        stream buffering operations"
-.It "setvbuf   stream buffering operations"
-.It "snprintf  formatted output conversion"
-.It "sprintf   formatted output conversion"
-.It "sscanf    input format conversion"
-.It "strerror  system error messages"
-.It "sys_errlist       system error messages"
-.It "sys_nerr  system error messages"
-.It "tempnam   temporary file routines"
-.It "tmpfile   temporary file routines"
-.It "tmpnam    temporary file routines"
-.It "ungetc    un-get character from input stream"
-.It "vasprintf formatted output conversion"
-.It "vfprintf  formatted output conversion"
-.It "vfscanf   input format conversion"
-.It "vprintf   formatted output conversion"
-.It "vscanf    input format conversion"
-.It "vsnprintf formatted output conversion"
-.It "vsprintf  formatted output conversion"
-.It "vsscanf   input format conversion"
-.El