int x = 0x76543210; char *c = (char*) &x; Big endian format: ------------------ Byte address | 0x01 | 0x02 | 0x03 | 0x04 | +++++++++++++++++++++++++++++ Byte content | 0x76 | 0x54 | 0x32 | 0x10 |
почему байтовый адрес ox01 хранит только 0x76, а не 0x765?
Байт равен 8 битам, и в шестнадцатеричном формате, который идет от 0x00 -> 0xFF (0 -> 255).
0x765 - который является шестнадцатеричным - не может поместиться в 8 битах.