Saltos no locales con setjmp y longjmp
Explica el funcionamiento de setjmp y longjmp, el uso crítico de volatile para evitar la corrupción de registros y los riesgos de fugas de memoria.
Explica el funcionamiento de setjmp y longjmp, el uso crítico de volatile para evitar la corrupción de registros y los riesgos de fugas de memoria.
Aprende la diferencia crítica entre aserciones de runtime para bugs de lógica y aserciones de compilación para integridad estructural.
Aprende cómo usar los valores de retorno y la variable errno para gestionar errores de forma segura y profesional en C.
Guía técnica sobre el uso de getenv, la gestión segura del entorno y la ejecución de comandos mediante system y sus implicaciones de seguridad.
Guía sobre los mecanismos de salida de un programa en C, diferencias entre terminación normal y abrupta, y el uso de handlers con atexit.
Guía sobre el uso de rand() y srand(), la importancia de la semilla y por qué el operador módulo puede introducir sesgos.
Uso de qsort y bsearch con void* para algoritmos de ordenación y búsqueda de tipos complejos.
Explica la función de stdin, stdout y stderr, el concepto de búfer y la importancia de la separación de flujos mediante redirección.
Explicación de los modos de buffering (bloque, línea y sin buffer) en stdio.h y su impacto en el rendimiento y la persistencia de datos.
Guía práctica sobre el uso de FILE*, fopen, lectura/escritura de texto y binario, y navegación de archivos con fseek y ftell.