0

どこ

val = 3325
val &= 65535;


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

<30434644>0CFDを期待しています

しかし、<636664>cfdを取得します

したがって、3325が正しい開始値ではない(ただし、2つの異なる関数から導出した)か、ビット単位の加算が間違っています。

前もって感謝します。

4

1 に答える 1

1

&ビット単位の「and」であり、ビット単位の加算ではありません。

また、間違った形式を使用したため、コードが間違っています。@"%04X"の代わりに使用してください@"%x"。(ここで、0 =十分な長さがない場合は0で埋め、4 =少なくとも4文字、X =大文字の16進数)

于 2011-04-20T15:14:52.397 に答える