Décalage à droite binary >> en Objective-C

J’ai une variable (unsigned int) part_1 .

Si je le fais: NSLog(@"%u %08x", part_1, part_1); (print unsigned value, and hex value):

2063597568 7b000000

(seuls les deux premiers auront des valeurs).

Je veux convertir ceci en

0000007b

Donc j’ai essayé de faire unsigned int part_1b = part_1 >> 6 (et beaucoup de variations)

Mais ceci produit:

32243712 01ec0000

Où vais-je mal?

Vous voulez décaler de 6 * 4 = 24 bits, pas seulement 6 bits. Chaque ‘0’ dans l’hexagone printf représente 4 bits.

 unsigned int part_1b = part_1 >> 24; ^^