Witam.
Mając taką tablicę:
unsigned char array[] = {1, 0};
Rzutując ją w taki sposób:
short a = *(short*)array;
W a jest wartość 1. Zastanawia mnie dlaczego. Tablica przechowywana jest jako ciągły fragment pamięci. W pamięci najpierw jest wartość 1 jako jeden bajt a potem 0 też jako jeden bajt. Typ short na moim komputerze ma 2 bajty a więc nie powinna być wartość 0x10 ?