C envoltura de biblioteca estándar Verifique el valor de retorno de las llamadas de la biblioteca para errores
- 2399
- 769
- Adriana Tórrez
AUTOR: Tobin Harding
El código C de producción C siempre debe verificar el valor de retorno de la biblioteca
Llama a los errores. Sin embargo, estos cheques a menudo requieren escribir lo mismo
código repetidamente. Hay una serie de soluciones a este problema, de
Que este es solo uno.
Por ejemplo
int foo (char *s) char *buf; if ((buf = malloc (strlen (s) + 1)) == null) / * error * /...
A menudo preferiría ignorar estas condiciones de error, pero esto es
Código de producción correcto! Declarando una función de envoltoriovoid *malloc (size_t size);
y definiéndolo
void *malloc (size_t size) void *ptr; if ((ptr = malloc (size)) == null) fprintf (stderr, "error malloc"); salida (exit_failure); return (ptr);
Entonces podemos usar esta función en nuestro código. El fragmento de código anterior puede
ahora se escrito como
int foo (char *s) char *buf; buf = malloc (strlen (s) + 1);…
Y podemos continuar felices de haber verificado el error
condición. Si los requisitos cambian, es simplemente una cuestión de
Actualización de la función de envoltura para cambiar el comportamiento en todo
proyecto.
Buena suerte.
Atribución:
Me presentaron las ideas presentadas aquí por el textoProgramación de red de Unix - Stevens, Fenner y Rudoff
Tutoriales de Linux relacionados:
- Tutorial de depuración de GDB para principiantes
- Cómo construir una aplicación Tkinter utilizando un objeto orientado ..
- Expresiones regulares de Python con ejemplos
- Cómo realizar operaciones de administración con Ansible ..
- Bash Regex avanzado con ejemplos
- Cómo gestionar los repositorios de GIT con Python
- Bash Loops con ejemplos
- Cómo trabajar con la API REST de WooCommerce con Python
- Instale Arch Linux en VMware Workstation
- Cómo conectarse a un servidor FTP usando Python
- « Introducción
- WordPress Blogging Sistema de gestión de contenido Docker Implementación y uso de imágenes »