El archivo de cabecera de la biblioteca estándar de C
stdio.h se utiliza para utilizar las capacidades de entrada y salida más
comunes en el lenguaje C como scanf o printf.
Foto tomada de freedigitalphotos.net |
Gracias a la librería stdio.h podemos utilizar los comandos
estándar de entrada y salida además de los comandos básicos de manipulación de
ficheros.
La información proporcionada por Wikipedia es la siguiente:
Las funciones incluidas son:
Nombre
|
Descripción
|
Funciones de manipulación de ficheros
|
|
fclose
|
Cierra un fichero a través de su puntero.
|
fopen,freopen,fdopen
|
Abre un fichero para lectura, para escritura/reescritura o
para adición.
|
remove
|
Elimina un fichero.
|
rename
|
Cambia al fichero de nombre.
|
rewind
|
Coloca el indicador de posición de fichero para el stream
apuntado por stream al comienzo del fichero.
|
tmpfile
|
Crea y abre un fichero temporal que es borrado cuando
cerramos con la función fclose().
|
Funciones de manipulación de entradas y salidas.
|
|
clearerr
|
Despeja los indicadores de final de fichero y de posición
de fichero para el stream apuntado por stream al comienzo del fichero.
|
feof
|
Comprueba el indicador de final de fichero.
|
ferror
|
Comprueba el indicador de errores.
|
fflush
|
Si stream apunta a un stream de salida o de
actualización cuya operación más reciente no era de entrada, la
función fflush envía cualquier dato aún sin escribir al entorno
local o a ser escrito en el fichero; si no, entonces el comportamiento no
está definido. Si stream es un puntero nulo, la función fflush realiza el
despeje para todos los streams cuyo comportamiento está descrito
anteriormente.
|
fgetpos
|
Devuelve la posición actual del fichero.
|
fgetc
|
Devuelve un carácter de un fichero.
|
fgets
|
Consigue una cadena de caracteres de un fichero.
|
fputc
|
Escribe un carácter en un fichero.
|
fputs
|
Escribe una cadena de caracteres en un fichero.
|
ftell
|
Devuelve la posición actual del fichero como número de
bytes.
|
fseek
|
Sitúa el puntero de un fichero en una posición aleatoria.
|
fsetpos
|
Cambia la posición actual de un fichero.
|
fread
|
lee diferentes tamaños de datos de un fichero.
|
fwrite
|
Envía, desde el array apuntado por puntero,
hasta nmemb de elementos cuyo tamaño es especificado por tamaño. El
indicador de posición de ficheros es avanzado por el número de caracteres
escritos correctamente. Si existe un error, el valor resultante del indicador
de posición de ficheros es indeterminado.
|
getc
|
Devuelve un carácter desde un fichero.
|
getchar
|
Igual que getc.
|
gets
|
Lee caracteres de entrada hasta que encuentra un salto de
línea, y los almacena en un único argumento.
|
printf,fprintf,sprintf
snprintf |
Usados para imprimir salidas de datos.
|
vprintf
|
También utilizado para imprimir salidas.
|
perror
|
Escribe un mensaje de error a stderr.
|
putc
|
Devuelve un carácter de un fichero.
|
putchar,fputchar
|
Igual que putc(stdout).
|
scanf,fscanf,sscanf
|
Utilizado para introducir entradas.
|
vfscanf,vscanf,vsscanf
|
También utilizado para introducir entradas.
|
setbuf
|
Esta función es equivalente a la función setvbuf pasando
los valores _IOFBF para modo y BUFSIZ para tamaño, o (si acumulador es un
puntero nulo), con el valor _IONBF para modo.
|
setvbuf
|
Sólo puede ser usada después de que el stream apuntado por
stream ha sido asociado con un fichero abierto y antes de otra operación
cualquiera es llevada acabo al stream. El argumento modo determina cómo
stream será almacenado según lo siguiente: _IOFBF ocasiona la entrada/salida
a ser completamente almacenado; _IOLBF ocasiona la entrada/salida a almacenar
por líneas; _IONBF ocasiona la entrada/salida a no ser almacenado. Si
acumulador no es un puntero nulo, el array al que es apuntado puede ser usado
en vez de la acumulación adjudicada por la función setvbuf. El argumento
tamaño especifica el tamaño del array.
|
tmpnam
|
Genera una cadena de caracteres que es un nombre válido
para ficheros y que no es igual al nombre de un fichero existente. La función
tmpnam genera una cadena diferente cada vez que es llamada, hasta un máximo
de TMP_MAX veces. Si la función es llamada más veces que TMP_MAX, entonces el
comportamiento de la función está definido según la implementación del
compilador.
|
ungetc
|
|
puts
|
Imprime una de cadena de caracteres.
|
Las constantes miembro son:
Nombre
|
Descripción
|
EOF
|
Entero negativo (int) usado para indicar "fin de
fichero".
|
BUFSIZ
|
Entero que indica el tamaño del buffer utilizado
por la función setbuf().
|
FILENAME_MAX
|
Tamaño máximo de la cadena de caracteres que contienen
el nombre de un fichero para ser abierto
|
FOPEN_MAX
|
Número máximo de ficheros que pueden estar abiertos
simultáneamente.
|
_IOFBF
|
Abreviatura de input/output fully
buffered (buffer entrada/salida totalmente lleno); es un entero que se
puede pasar como parámetro de la funciónsetvbuf() para requerir bloqueo
del buffer en la entrada y salida del stream abierto.
|
_IOLBF
|
Abreviatura de input/output line
buffered (...??); es un entero que se puede pasar como parametro a la
función setvbuf() para requerir line buffered (??)en la
entrada y salida del stream abierto.
|
_IONBF
|
Abreviatura de "input/output not buffered"
(entrada/salida sin buffer); es un entero que se puede pasar como parametro a
la función setvbuf() para requerir que la entrada salida del stream
abierto funcione sin buffer.
|
L_tmpnam
|
Tamaño de la cadena de caractres con la longitud
suficiente para almacenar un nombre de fichero temporal generado por la
función tmpnam().
|
NULL
|
Macro que representa la constante puntero nulo; representa
un valor de puntero que no apunta a ninguna dirección válida de objeto alguno
en memoria.
|
SEEK_CUR
|
Entero que se puede pasar como parámetro a la
función fseek() para indicar posicionamiento relativo a la posición
actual del fichero.
|
SEEK_END
|
Entero que se puede pasar como parámetro a la
función fseek() para indicar posicionamiento relativo al final del
fichero.
|
SEEK_SET
|
Entero que se puede pasar como parámetro a la
función fseek() para indicar posicionamiento relativo al inicio del
fichero.
|
TMP_MAX
|
El número máximo de nombres de ficheros únicos generables
por la función tmpnam().
|
Las variables incluidas son:
Nombre
|
Descripción
|
stdin
|
Puntero a FILE que referencia la entrada
estándar, normalmente el teclado.
|
stdout
|
Puntero a FILE que referencia la salida
estándar, normalmente el monitor.
|
stderr
|
Puntero a FILE que referencia la salida de error
estándar, normalmente el monitor.
|
Los tipos de datos son:
FILE – Contiene información sobre el fichero y el flujo de
caracteres necesarios para realizar operaciones de lectura/escritura sobre él.
fpos_t – Tipo que permite identificar la posición de cada
byte en un fichero.
size_t – Tipo entero sin signo, resultante de utilizar el
operador sizeof.
¿Qué utilidades ves al uso de stdio.h?