c++ - 如何在 C++ 中设置 short int 的高字节和低字节

标签 c++ typeconverter valuestack

我要问如何在 C++ 中设置(short int)的高字节和低字节。

我们用它来获取上限和下限,但现在如何设置 short int 的上限和下限字节。

int number = 3510;

char upper = number >> 8;

char lower = number && 8;

谢谢:)

阅读您的回答后,我发现了一个问题,请查看我的代码:

int number = 55;
int mynumber = 0;

char upper = number >> 8;

char lower = number && 8;

mynumber = (mynumber & 0xff00) | lower;
mynumber = (mynumber & 0x00ff) | (upper << 8);

printf("%i",mynumber);

它只返回 1 但必须返回 55 ! 如何解决?

最佳答案

设置高字节:

number = (number & 0x00ff) | (upper << 8);

设置低字节:

number = (number & 0xff00) | lower;

upper和lower都应该是char或者unsigned char类型。

关于c++ - 如何在 C++ 中设置 short int 的高字节和低字节,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13900010/

相关文章:

python - 在 Python 中将 str 数据转换为文件对象

java - Struts 2 选择带有数组列表值的标签

c# - 使用哪种方法来模型绑定(bind)自定义类型

c# - 如何指示 TypeConverter 中的错误

c++ - 如何将枚举导入 C++ 中的不同命名空间?

c++ - 在 C++ 中模拟编译时反射

java - 为什么我的自定义拦截器不起作用?

java - Struts2 Session 存储位置和管理

c++ - 每个 ( in ) 和 for ( : )? 之间有什么区别

c++ - 如何使 boost::asio::ip::tcp::acceptor 永远阻塞?