我想用b替换a的字节。
unsigned int a = 0x12dc4430;
unsigned char b = 0xcb;
如何用b替换a的第1和第3个字节?
像这样: 对于第一个重要字节
12dc33cb
和第3个重要字节
12cb4430
答案 0 :(得分:3)
不确定“第1和第3字节”是什么意思,但假设你的意思是最重要的字节,第3个字节是最重要的字节:
unsigned int a = 0x12dc4430;
unsigned char b = 0xcb;
a = (a & 0x00ff00ff) | (b << 8) | (b << 24);
printf("%x\n", a);
打印cbdccb30