Chr*_*oph -2 c++ signed integer char
我有两个char值char_1和char_2.现在我想将它们组合成一个16位有符号整数值,其中char_1包含MSB中的符号.
| SGN | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
| 签署字符1 | 其余的Char 1 | Char 2 |
我的尝试是:
signed short s = (((int)char_1) << 8) & (int)char_2;
Run Code Online (Sandbox Code Playgroud)
现在我得到0 s...
您需要按位or不and
(((int)char_1) << 8) | (int)char_2;
Run Code Online (Sandbox Code Playgroud)
既然你也在处理位,你也应该使用无符号类型(unsigned char,unsigned int,unsigned short.)
| 归档时间: |
|
| 查看次数: |
454 次 |
| 最近记录: |