[C con Clase] Archivos binarios vs archivos de texto

hectorfh en gmail.com hectorfh en gmail.com
Jue Abr 5 03:58:34 CEST 2007


Hola nuevamente:

Por último dejenmé contarles una anécdota.

Trabajando con archivos binarios una vez, hice un programa que
guardaba un arreglo de estructuras "a lo bruto" utilizando la función
"fwrite" para luego leerlo con "fread".

Luego de compilar el fuente, correr el programa y generar el archivo,
no recuerdo por qué, volví a compilar con otro compilador. Al intentar
leer el archivo binario tenía problemas y no funcionaba.

Después de investigar varios minutos me dí cuenta de lo siguiente:
¡los tamaños de las estructuras no coincidían! La razón era que el
compilador que utilicé la segunda vuelta cambiaba la alineación de los
campos para optimizar el acceso a los mismos. Por lo tanto las
estructuras eran distintas a nivel "bit". El error mío fue escribir y
leer la estructura como venía, en lugar de hacerlo campo a campo.

Saludos




Más información sobre la lista de distribución Cconclase