RSS El Diario ¿Qué Demonios?
Seguir
Código del Día: Bytes Mágicos
"Bytes mágicos" son una parte común de un encabezado de archivo, lo que ayuda a identificar el tipo de archivo. Por ejemplo, un archivo de mapa de bits comienza con "BM" y un archivo PGM comienza con "PN". El equipo de Christer estaba trabajando en un software para manipular tipos de archivos CAD y necesitaba identificar cuándo un archivo era un archivo CAD pero no un tipo de archivo UFF específico. Necesitaban verificar que el archivo no comenzara con 0xabb0, 0xabb1 o 0xabb3. Un compañero de trabajo escribió una comprobación de validación, pero confundió números hexadecimales con cadenas, lo que llevó a comparaciones incorrectas. Este error creó un nuevo sistema de numeración sin sentido, donde 0xABB0 y 0xabb0 se consideraban diferentes. Este ejemplo de código plantea preguntas sobre la relación entre números hexadecimales en mayúsculas y minúsculas, como si 0xABB0 < 0xABB1 implica 0xABB0 < 0xabb1. El código también plantea la pregunta de cómo escribir un 3 en minúscula en hexadecimal.