Función de ferror en lenguaje C

Función de ferror en lenguaje C
Es común que lea y escribamos los archivos con nuestro código, ya que esta es una herramienta poderosa que nos permite almacenar o acceder a cualquier tipo de datos que almacenamos previamente en la computadora

Actualmente, hay innumerables tipos de archivos, desde hojas de cálculo o bases de datos, creados por el usuario hasta los archivos del sistema que permiten la operación de OS u otros programas.

La buena gestión de archivos mejora la integridad de sus datos. Por lo tanto, es importante abrirlos, editarlos y cerrarlos de la manera correcta, y detectar cuándo ocurren errores durante estas operaciones.

En esto Pista de Linux Artículo sobre el idioma C, explicaremos cómo usar el ferror () función para detectar los errores de administración de archivos. Observaremos la sintaxis de esta función, los argumentos de entrada y salida utilizados, y el tipo de datos aceptados. Luego, analizaremos la implementación de esta función junto con otras funciones complementarias y mostraremos el proceso paso a paso sobre cómo manejar los archivos y cómo usar ferror () usando correctamente los fragmentos e imágenes de código.

Sintaxis de la función ferror () en el lenguaje C

int err ferror (archivo * f_ptr);

Descripción de la función ferror () en el idioma C

El ferror () consultas de la función El indicador de error asociado con el archivo mencionado por F_PTR En su argumento de entrada.

Si se produce el error no, "0" se devuelve en errar. Si el indicador de error está activo, ferror () Devuelve un resultado positivo que es mayor que cero. Si el indicador de error está activo, debe desactivarse nuevamente con la función ClearErr (). De lo contrario, permanece en ese estado hasta que la aplicación que abrió el archivo está cerrada.

El ferror () es parte de la biblioteca de entrada/salida estándar y se define en el "stdio.encabezado. Para usar este recurso, debemos incluirlo en nuestro archivo de código de la siguiente manera:

#incluir

Una vez que el "stdio.El encabezado h "está incluido, podemos usar todas las características de manejo de archivos que veremos en la siguiente sección.

Cómo usar la función ferror () en el lenguaje de programación C para verificar si se produce un error al procesar un archivo

En este ejemplo, le mostraremos el proceso paso a paso sobre cómo usar la función ferror () para verificar si ocurre un error al procesar un archivo. Para hacer esto, creamos el código que usa las diversas funciones para abrir, cerrar y leer los archivos y usar el ferror () función para verificar si no se produjeron errores.

El archivo que usaremos en este ejemplo es lo que creamos anteriormente en "documentos" bajo el "ejemplo de LH.txt ”nombre y escriba un fragmento de Einstein en él.

El primer paso es definir el F_PTR puntero para el archivo que usamos. Este puntero es el argumento de salida para fopen () y el argumento de entrada para ferror () y las otras funciones de procesamiento de archivos que utilizamos. El siguiente fragmento muestra la definición de F_PTR y abre el archivo con fopen ():

#incluir
#incluir
vacío principal()

Archivo *f_ptr;
buffer de char [250];
F_PTR = Fopen ("Documentos/Ejemplo de LH.txt "," r ");
fread (búfer, 120, 1, f_ptr);
printf ("%s", búfer);
if (ferror (f_ptr) == 0)
printf ("El archivo se leyó con éxito \ n");
FCLOSE (F_PTR);

Después de abrir el archivo, lee su contenido y llama al ferror () función en el si condición para verificar el estado de esta bandera. Si el archivo se lee correctamente, devuelve "0" como resultado. Por lo tanto, el programa cae en la condición IF y muestra el siguiente mensaje en la consola de comando, "el archivo se leyó con éxito". Luego, cerramos el archivo con la función FClose ().

Errores devueltos por funciones de procesamiento de archivos en el idioma C

En esta sección, analizaremos cómo detectar los errores en las diversas funciones de procesamiento de archivos.

La función fopen () devuelve "0" si el archivo especificado en la ruta de su argumento de entrada no se pudo abrir. Esto puede deberse a varios errores, como el archivo que no existe en la ruta especificada o que está utilizando otro programa. La función fclose () devuelve "0" si el archivo está cerrado correctamente. Se devuelve un número distinto de cero si se produce un error.

En el siguiente ejemplo, usamos el fragmento anterior y usamos estos retornos de error para verificar que el archivo se abra y se cierre correctamente:

#incluir
#incluir
vacío principal()

Archivo *f_ptr;
buffer de char [250];
F_PTR = Fopen ("Documentos/Ejemplo de LH.txt "," r ");
if (f_ptr != 0);
printf ("El archivo estaba abierto con éxito \ n");
fread (búfer, 120, 1, f_ptr);
printf ("%s", búfer);
if (ferror (f_ptr) == 0)
printf ("El archivo se leyó con éxito \ n");
if (fclose (f_ptr) == 0);
printf ("El archivo estaba cerrado con éxito \ n");

La siguiente imagen muestra los resultados de cada uno de los pasos que se realizan para abrir, leer y cerrar el archivo:

Conclusión

En esto Pista de Linux Artículo, le mostramos cómo usar el ferror () función para detectar los errores de procesamiento de archivos. Observamos la parte teórica de esta función y la aplicamos en un ejemplo práctico para mostrarle cómo detectar un error de lectura. También explicamos cómo puede detectar los errores en las funciones complementarias para abrir y cerrar los archivos usando fopen () y fclose (). Esperamos que hayas encontrado este artículo útil. Para más artículos como este, use nuestro motor de búsqueda.