簡體   English   中英

Objective-C中的按位右移>>

[英]Bitwise right shift >> in Objective-C

我有一個變量(unsigned int) part_1

如果我這樣做: NSLog(@"%u %08x", part_1, part_1); (輸出無符號值和十六進制值)輸出:

2063597568 7b000000

(只有前兩個會有值)。

我想把它轉換成

0000007b

所以我試過做unsigned int part_1b = part_1 >> 6 (以及很多變化)

但這輸出:

32243712 01ec0000

我哪里錯了?

您想要移位6 * 4 = 24位,而不僅僅是6位。 十六進制printf中的每個'0'代表4位。

unsigned int part_1b = part_1 >> 24;
                                 ^^

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM