向 uint32 的第一个字节添加一个字节
Adding a byte to the first byte of an uint32
我正在用 c 中的按位运算符玩一点。
我有以下内容:
uint32 myValue = 0x00ffffff;
我想在 myValue 的第一个字节中添加一个值为 0x33 的字节,以便在末尾有这个:
myValue = 0x33ffffff;
我正在尝试使用:
myValue = ((myValue & 0xff) << 0) | (0x33u & 0xff);
我哪里做错了?
试试这个:
int main() {
uint32_t myValue = 0x00ffffff;
myValue = myValue | (0x33u << 24);
printf("%x\n", myValue); //====> 0x33ffffff
}
我正在用 c 中的按位运算符玩一点。
我有以下内容:
uint32 myValue = 0x00ffffff;
我想在 myValue 的第一个字节中添加一个值为 0x33 的字节,以便在末尾有这个:
myValue = 0x33ffffff;
我正在尝试使用:
myValue = ((myValue & 0xff) << 0) | (0x33u & 0xff);
我哪里做错了?
试试这个:
int main() {
uint32_t myValue = 0x00ffffff;
myValue = myValue | (0x33u << 24);
printf("%x\n", myValue); //====> 0x33ffffff
}