我有以下代码:
byte my_byte;
my_byte |= (1 << 7);
my_byte |= (1 << 6);
我正在尝试将 my_byte 中的第 8 位和第 7 位设置为 1。使用调试器我发现执行第一行后,my_byte 的值为 -128。执行第 2 行后,my_byte 的值为 -64。
我以为最终结果是 192 (2^7 + 2^6)。有谁知道我做错了什么?
另外,我应该在一开始就初始化 my_byte 吗?如果是这样,我如何将所有位设置为 0?
谢谢您的帮助。