Я должен спросить, как установить верхний и нижний байты (короткий int) в C ++.
мы используем это для получения верхнего и нижнего, но теперь, как установить верхний и нижний байты short int
,
int number = 3510;
char upper = number >> 8;
char lower = number && 8;
Спасибо 🙂
после прочтения вашего ответа я нашел проблему, посмотрите мой код, пожалуйста:
внутренний номер = 55;
int mynumber = 0;
верхний символ = число >> 8;
символ ниже = число && 8;
мой номер = (мой номер & 0xff00) | ниже;
мой номер = (мой номер & 0x00ff) | (верхняя << 8);
Е ( «% я», MyNumber);
он просто возвращает 1, но должен вернуть 55!
как это исправить?
Чтобы установить старший байт:
number = (number & 0x00ff) | (upper << 8);
Чтобы установить младший байт:
number = (number & 0xff00) | lower;
И верхний, и нижний должны иметь тип char или unsigned char.
Других решений пока нет …