如何在一个整数变量中存储多个字符值?

时间:2017-03-24 20:02:23

标签: c

如何在单个整数变量中存储多个字符值? 例如,我有四个字符,值a = 45; b = A9; c = 44和d = 55.我需要将它们全部存储在一个整数变量中,该变量看起来像l = 0x45A94455

1 个答案:

答案 0 :(得分:2)

移位和/或按位操作。每个char为1个字节,int为4。

所以

unsigned int i = (a << 24) | (b << 16) | (c << 8) | d;

然后,如果你想用十六进制打印它。

printf("0x%08X", i)

%08X表示使用大写字母08X为小写)填充为8个字符,并以十六进制格式打印0 {#1}} x