stdio(3)

NOMBRE
stdio - funciones de biblioteca de entrada/salida estándar.

BIBLIOTECA
Biblioteca Estándar C (libc, -lc)

SINOPSIS
#include <stdio.h>

extern FILE  *stdin;
extern FILE  *stdout;
extern FILE  *stderr;

DESCRIPCIÓN
La biblioteca de E/S estándar proporciona una interfaz de flujo (stream) utilizando un sistema de buffers (memoria intermedia) simple y eficiente. La entrada y la salida se mapean en flujos lógicos de datos y las caracteristicas fisicas de E/S permanecen ocultas para el programador. Las funciones y las macros se muestran mas adelante; para mas información se puede recurrir a las paginas del manual individuales para cada una de ellas.

A stream is associated with an external file (which may be a physical device) by 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 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, it is unspecified whether the position indicator will be placed at the start or the end of the 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 fgetc(3) function; all output takes place as if all characters were written by successive calls to the fputc(3) function.

A file is disassociated from a stream by 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 FILE object is indeterminate after a file is closed (garbage).

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 exit(3) function is called, all open files are closed (hence all output streams are flushed) before program termination. Other methods of program termination, such as abort(3) do not bother about closing files properly.

At program startup, three text streams are predefined and need not be opened explicitly: standard input (for reading conventional input), standard output (for writing conventional output), and standard error (for writing diagnostic output). These streams are abbreviated stdin, stdout, and stderr. When opened, the standard error stream is not fully buffered; the standard input and output streams are fully buffered if and only if the streams do not refer to an interactive device.

Los flujos de salida que hacen referencia a dispositivos de tipo terminal, siempre utilizan memorias intermedias líneales por defecto; durante la salida hacia cada flujo se escribe automáticamente un flujo de entrada que hace referencia al dispositivo terminal que lee. En los casos donde se requieren una enorme cantidad de calculos, despues de imprimir parte de una línea en un terminal de salida, es necesario efectuar una descarga de la memoria intermedia en el flujo de salida estándar mediante fflush(3) antes de dejarlo y comenzar los calculos para que la salida aparezca.

The stdio library is a part of the library libc and routines are automatically loaded as needed by cc(1). The 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.

The following are defined as macros; these names may not be reused without first removing their current definitions with #undef: BUFSIZ, EOF, FILENAME_MAX, FOPEN_MAX, L_cuserid, L_ctermid, L_tmpnam, NULL, SEEK_END, SEEK_SET, SEEK_CUR, TMP_MAX, clearerr, feof, ferror, fileno, getc, getchar, putc, putchar, stderr, stdin, stdout. Function versions of the macro functions feof, ferror, clearerr, fileno, getc, getchar, putc, and putchar exist and will be used if the macros definitions are explicitly removed.

  List of functions
Función | Descripción
clearerr(3) | comprueba y reinicia el estado del flujo
fclose(3) | cierra un flujo
fdopen(3) | funciones de apertura de flujo
feof(3) | comprueba y reinicia el estado del flujo
ferror(3) | comprueba y reinicia el estado del flujo
fflush(3) | descarga la memoria intermedia del flujo sobre el fichero
fgetc(3) | recoge el próximo carácter de un flujo de entrada
fgetpos(3) | reposición en un flujo
fgets(3) | recoge una línea de un flujo de entrada
fileno(3) | return the integer descriptor of the argument stream
fmemopen(3) | open memory as stream
fopen(3) | funciones de apertura de flujo
fopencookie(3) | open a custom stream
fprintf(3) | conversión para salida formateada
fpurge(3) | descarga la memoria intermedia del flujo sobre el fichero
fputc(3) | envia un carácter o una palabra a un flujo
fputs(3) | envia una línea a un flujo
fread(3) | entrada/salida binaria
freopen(3) | funciones de apertura de flujo
fscanf(3) | conversión para entrada con formato
fseek(3) | reposición en un flujo
fsetpos(3) | reposición en un flujo
ftell(3) | reposición en un flujo
fwrite(3) | entrada/salida binaria
getc(3) | recoge el próximo carácter de un flujo de entrada
getchar(3) | recoge el próximo carácter de un flujo de entrada
gets(3) | recoge una línea de un flujo de entrada
getw(3) | recoge el próximo carácter de un flujo de entrada
mktemp(3) | crea un nombre de archivo temporal (único)
open_memstream(3) | open a dynamic memory buffer stream
open_wmemstream(3) | open a dynamic memory buffer stream
perror(3) | mensajes de error del sistema
printf(3) | conversión para salida formateada
putc(3) | envia un carácter o una palabra a un flujo
putchar(3) | envia un carácter o una palabra a un flujo
puts(3) | envia una línea a un flujo
putw(3) | envia un carácter o una palabra a un flujo
remove(3) | elimina una entrada de directorio
rewind(3) | reposición en un flujo
scanf(3) | conversión para entrada con formato
setbuf(3) | operaciones de flujo con memoria intermedia
setbuffer(3) | operaciones de flujo con memoria intermedia
setlinebuf(3) | operaciones de flujo con memoria intermedia
setvbuf(3) | operaciones de flujo con memoria intermedia
sprintf(3) | conversión para salida formateada
sscanf(3) | conversión para entrada con formato
strerror(3) | mensajes de error del sistema
sys_errlist(3) | mensajes de error del sistema
sys_nerr(3) | mensajes de error del sistema
tempnam(3) | rutinas para archivado temporal
tmpfile(3) | rutinas para archivado temporal
tmpnam(3) | rutinas para archivado temporal
ungetc(3) | ignora un carácter de un flujo de entrada
vfprintf(3) | conversión para salida formateada
vfscanf(3) | conversión para entrada con formato
vprintf(3) | conversión para salida formateada
vscanf(3) | conversión para entrada con formato
vsprintf(3) | conversión para salida formateada
vsscanf(3) | conversión para entrada con formato

ESTÁNDARES
C11, POSIX.1-2008.

HISTORIAL
C89, POSIX.1-2001.

VÉASE TAMBIÉN
close(2), open(2), read(2), write(2), stdout(3), unlocked_stdio(3)

TRADUCCIÓN
La traducción al español de esta página del manual fue creada por Juan Piernas <piernas@ditec.um.es> y Miguel Pérez Ibars <mpi79470@alu.um.es>

Esta traducción es documentación libre; lea la GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html) o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.

Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a debian-l10n-spanish@lists.debian.org.