Namespaces
Variants

File input/output

From cppreference.net
< c

El <stdio.h> header proporciona soporte genérico para operaciones de archivo y suministra funciones con capacidades de entrada/salida de caracteres estrechos.

El <wchar.h> header proporciona funciones con capacidades de entrada/salida de caracteres anchos.

Los flujos de E/S se denotan mediante objetos de tipo FILE que solo pueden ser accedidos y manipulados a través de punteros de tipo FILE * . Cada flujo está asociado con un dispositivo físico externo (archivo, flujo de entrada estándar, impresora, puerto serial, etc).

Contenidos

Tipos

Definido en el encabezado <stdio.h>
tipo de objeto, capaz de contener toda la información necesaria para controlar un flujo de E/S de C
(typedef)
tipo de objeto completo no-array, capaz de especificar de forma única una posición y el estado del analizador multibyte en un archivo
(typedef)

Flujos estándar predefinidos

Definido en el encabezado <stdio.h>
expresión de tipo FILE * asociada con el flujo de entrada
expresión de tipo FILE * asociada con el flujo de salida
expresión de tipo FILE * asociada con el flujo de salida de error
(constante macro)

Funciones

Acceso a archivos
Definido en el encabezado <stdio.h>
abre un archivo
(función)
abrir un flujo existente con un nombre diferente
(función)
cierra un archivo
(función)
sincroniza un flujo de salida con el archivo real
(función)
establece el búfer para un flujo de archivo
(función)
establece el búfer y su tamaño para un flujo de archivo
(función)
Definido en el encabezado <wchar.h>
(C95)
cambia un flujo de archivo entre E/S de caracteres anchos y E/S de caracteres estrechos
(función)
Entrada/salida directa
Definido en el encabezado <stdio.h>
lee desde un archivo
(función)
escribe a un archivo
(función)
Entrada/salida sin formato
Carácter estrecho
Definido en el encabezado <stdio.h>
obtiene un carácter de un flujo de archivo
(función)
obtiene una cadena de caracteres de un flujo de archivo
(función)
escribe un carácter a un flujo de archivo
(función)
escribe una cadena de caracteres a un flujo de archivo
(función)
lee un carácter desde stdin
(función)
(eliminado en C11) (C11)
lee una cadena de caracteres desde stdin
(función)
escribe un carácter en stdout
(función)
escribe una cadena de caracteres en stdout
(función)
coloca un carácter de vuelta en un flujo de archivo
(función)
Carácter ancho
Definido en el encabezado <wchar.h>
obtiene un carácter ancho de un flujo de archivo
(función)
(C95)
obtiene una cadena ancha de un flujo de archivo
(función)
escribe un carácter ancho a un flujo de archivo
(función)
(C95)
escribe una cadena ancha en un flujo de archivo
(función)
lee un carácter ancho desde stdin
(función)
escribe un carácter ancho en stdout
(función)
(C95)
coloca un carácter ancho de vuelta en un flujo de archivo
(función)
Entrada/salida formateada
Carácter estrecho
Definido en el encabezado <stdio.h>
lee entrada formateada desde stdin , un flujo de archivo o un búfer
(función)
(C99) (C99) (C99) (C11) (C11) (C11)
lee entrada formateada desde stdin , un flujo de archivo o un búfer
usando una lista de argumentos variables
(función)
imprime salida formateada a stdout , un flujo de archivo o un búfer
(función)
imprime salida formateada a stdout , un flujo de archivo o un búfer
usando una lista de argumentos variables
(función)
Carácter ancho
Definido en el encabezado <wchar.h>
(C95) (C95) (C95) (C11) (C11) (C11)
lee entrada de caracteres anchos formateada desde stdin , un flujo de archivo o un búfer
(función)
lee entrada formateada de caracteres anchos desde stdin , un flujo de archivo
o un búfer usando una lista de argumentos variables
(función)
imprime salida de caracteres anchos formateada hacia stdout , un flujo de archivo o un búfer
(función)
imprime salida formateada de caracteres anchos hacia stdout , un flujo de archivo
o un búfer usando una lista de argumentos variables
(función)
Posicionamiento de archivos
Definido en el encabezado <stdio.h>
devuelve el indicador de posición actual del archivo
(función)
obtiene el indicador de posición del archivo
(función)
mueve el indicador de posición del archivo a una ubicación específica en un archivo
(función)
mueve el indicador de posición del archivo a una ubicación específica en un archivo
(función)
mueve el indicador de posición del archivo al principio en un archivo
(función)
Manejo de errores
Definido en el encabezado <stdio.h>
borra errores
(función)
verifica el fin de archivo
(función)
verifica si hay un error en el archivo
(función)
muestra una cadena de caracteres correspondiente al error actual en stderr
(función)
Operaciones sobre archivos
Definido en el encabezado <stdio.h>
elimina un archivo
(función)
renombra un archivo
(función)
devuelve un puntero a un archivo temporal
(función)
devuelve un nombre de archivo único
(función)

Constantes de macro

Definido en el encabezado <stdio.h>
EOF
expresión constante entera de tipo int y valor negativo
(macro constante)
FOPEN_MAX
número máximo de archivos que pueden estar abiertos simultáneamente
(macro constante)
FILENAME_MAX
tamaño necesario para un arreglo de char para contener el nombre de archivo más largo admitido
(macro constante)
BUFSIZ
tamaño del búfer utilizado por setbuf
(macro constante)
_IOFBF _IOLBF _IONBF
argumento para setvbuf que indica E/S completamente almacenada en búfer
argumento para setvbuf que indica E/S almacenada en búfer por líneas
argumento para setvbuf que indica E/S sin búfer
(macro constante)
SEEK_SET SEEK_CUR SEEK_END
argumento para fseek que indica búsqueda desde el inicio del archivo
argumento para fseek que indica búsqueda desde la posición actual del archivo
argumento para fseek que indica búsqueda desde el final del archivo
(macro constante)
TMP_MAX TMP_MAX_S
(C11)
número máximo de nombres de archivo únicos que puede generar tmpnam
número máximo de nombres de archivo únicos que puede generar tmpnam_s
(macro constante)
L_tmpnam L_tmpnam_s
(C11)
tamaño necesario para un arreglo de char para contener el resultado de tmpnam
tamaño necesario para un arreglo de char para contener el resultado de tmpnam_s
(macro constante)

Referencias

  • Estándar C23 (ISO/IEC 9899:2024):
  • 7.21 Entrada/salida <stdio.h> (p: TBD)
  • 7.29 Utilidades extendidas de caracteres multibyte y anchos <wchar.h> (p: TBD)
  • 7.31.11 Entrada/salida <stdio.h> (p: TBD)
  • 7.31.16 Utilidades extendidas de caracteres multibyte y anchos <wchar.h> (p: TBD)
  • K.3.5 Entrada/salida <stdio.h> (p: TBD)
  • Estándar C17 (ISO/IEC 9899:2018):
  • 7.21 Entrada/salida <stdio.h> (p: TBD)
  • 7.29 Utilidades extendidas de caracteres multibyte y anchos <wchar.h> (p: TBD)
  • 7.31.11 Entrada/salida <stdio.h> (p: TBD)
  • 7.31.16 Utilidades extendidas de caracteres multibyte y anchos <wchar.h> (p: TBD)
  • K.3.5 Entrada/salida <stdio.h> (p: TBD)
  • Estándar C11 (ISO/IEC 9899:2011):
  • 7.21 Entrada/salida <stdio.h> (p: 296-339)
  • 7.29 Utilidades extendidas de caracteres multibyte y anchos <wchar.h> (p: 402-446)
  • 7.31.11 Entrada/salida <stdio.h> (p: 456)
  • 7.31.16 Utilidades extendidas de caracteres multibyte y anchos <wchar.h> (p: 456)
  • K.3.5 Entrada/salida <stdio.h> (p: 586-603)
  • Estándar C99 (ISO/IEC 9899:1999):
  • 7.19 Entrada/salida <stdio.h> (p: 262-305)
  • 7.24 Utilidades extendidas de caracteres multibyte y anchos <wchar.h> (p: 348-392)
  • 7.26.9 Entrada/salida <stdio.h> (p: 402)
  • 7.26.12 Utilidades extendidas de caracteres multibyte y anchos <wchar.h> (p: 402)
  • Estándar C89/C90 (ISO/IEC 9899:1990):
  • 4.9 ENTRADA/SALIDA <stdio.h>
  • 4.13.6 Entrada/salida <stdio.h>

Véase también

Documentación de C++ para entrada/salida de archivos estilo C