Thread einzelne Bytes in Perl (19 answers)
Opened by campbell-bs at 2011-11-17 15:42

murphy
 2011-11-18 17:26
#154311 #154311
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
2011-11-18T10:46:56 GwenDragon
[...]
Das Template bei
Code: (dl )
1
2
3
4
uint8t zahl1;
uint16_t zahl2;
int32_t zahl3;
uint8t zahl1;

für pack dürfte dann sein: CSlC.
Ungetestet.

Stimmt prinzipiell, Vorsicht ist lediglich geboten weil der C-Compiler theoretisch beliebiges Alignment zwischen die Felder der Struktur schieben kann. Ob er das tut hängt von der Architektur, dem Compiler und eventuell auch den Optimierungseinstellungen oder irgendwelchen Kompatibilitätsflags ab.

Will man kein Alignment, kann man beim GCC zum Beispiel den Strukturtypen mit dem Attribut __attribute__((packed)) versehen.

Muss man mit pack in Perl Alignment emulieren, kann man das mit dem Formatcode x erledigen. Man hat allerdings das Problem herauszufinden, wie genau das Alignment auf der C-Seite aussieht.
When C++ is your hammer, every problem looks like your thumb.

View full thread einzelne Bytes in Perl