【发布时间】:2020-06-02 08:43:56
【问题描述】:
我想将四个单字节数据组合成一个四字节数据。
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
unsigned long int sdata = 0x12*(16^6) + 0x34*(16^4) + 0x56*(16^2) + 0x78;
printf("%x %d", sdata, sizeof(sdata));
return 0;
}
屏幕打印:
c20 4
我想得到:
sdata = 0x12345678
unsigned long int类型是4字节数据类型,为什么不能保存数据呢?为什么输出错误?
【问题讨论】:
标签: c