Endianness
:
union endian_example {
unsigned long u;
unsigned char a[sizeof(unsigned long)];
} x;
x.u = 0x0a0b0c0d;
int i;
for (i = 0; i< sizeof(unsigned long); i++) {
printf("%u\n", (unsigned)x.a[i]);
}
, . . .
-. - (>>, <<), , . . ( ).
C , - . ( ) "" C, , struct.
struct thing {
unsigned y:1;
signed z:1;
unsigned a:2;
unsigned b:4;
};
endianness . y thing? ? ( , IPv4, ), , , , - . , , , .