Objective-C中的按位右移>>

我有一个variables(无符号整数) part_1

如果我这样做: NSLog(@"%u %08x", part_1, part_1); (打印无符号值和hex值)输出:

2063597568 7b000000

(只有前两个将有值)。

我想将其转换为

0000007b

所以我试过做unsigned int part_1b = part_1 >> 6 (和很多变化)

但是这个输出:

32243712 01ec0000

我哪里错了?

你想要移位6 * 4 = 24位,而不仅仅是6位。 hexprintf中的每个“0”代表4位。

 unsigned int part_1b = part_1 >> 24; ^^ 
Interesting Posts