Igen, de ha pontosan tudod, hogy melyik mező hol van, akkor elegendő pontosan csak akkor hozzányúlni, amikor szükség van rá. Például tudod, hogy a 20. bájttól 4 bájton little-endianban van az adat. Akkor ha jól programozod, azt pontosan ugyanannyi művelet kiszedni, mintha egy struktúrából vennéd ki. Nyilván bigendian architektúrán beékelődik egy bájtforgatás művelet, de azt meg meg lehet valósítani regiszterben makróval, tehát elenyésző lesz az overheadje. És még mindig szabályosan használtuk a C-t, nem holmi structot egyben kiírunk, rámaszkolunk piszkos trükkel.
Én is találkoztam már olyan problémával, ahol ezek a dolgok is számítottak. Érdemes egyszer kimérni, hogy hányszoros különbség van egy szám beolvasásában a fent leírt mód, és egy xml között.