user1907603
user1907603

Reputation: 45

Set upper and lower bytes of an (short int) in C++

i have problem for setting upper and lower bytes of (short int). please look on my code it just return number 1 but must return 55 .

int number = 55;
int mynumber = 0;

//convert short int to char.
char upper = number >> 8;
char lower = number && 8;

//convert char to short int .
mynumber = (mynumber & 0xff00) | lower;
mynumber = (mynumber & 0x00ff) | (upper << 8);

printf("%i",mynumber);

Upvotes: 1

Views: 2247

Answers (1)

NPE
NPE

Reputation: 500277

The lower calculation is wrong:

char lower = number & 0xff;

Upvotes: 4

Related Questions