objC按位添加

时间:2011-04-20 15:11:48

标签: objective-c bitwise-and

哪里

val = 3325
val &= 65535;


[rtnData appendData:[[NSString stringWithFormat:@"%x", val] dataUsingEncoding:NSUTF8StringEncoding]];

我期待< 30434644> 0CFD

但得到< 636664> CFD

因此3325不是正确的起始值(但是我从2个不同的函数派生出来)或者按位加法是错误的。

提前致谢。

1 个答案:

答案 0 :(得分:1)

&是按位“和”,而不是按位添加。

代码错误,因为您使用了错误的格式。使用@"%04X"代替@"%x"。 (其中 0 =填充0,如果不够长, 4 =至少4个字符, X =大写十六进制)