0
ネットワーク経由でパケットを送信するためのコードを記述しようとしています。しかし、私は組み立てられたパケットに問題があります。ここに私の状況を示すいくつかのコードです:NSDataとNSMutableDataを使用したときのメモリの値の違い
私はブレークポイントを設定し、*data1
と
*data2
のためにメモリの値を読み取る
NSMutableData *data1 = [NSMutableData dataWithLength:3];
NSData * data2 = [[NSData alloc] initWithBytes:(unsigned char[]){0xAA, 0xAA, 0xAA} length:3];
[data1 appendBytes:(unsigned char[]){0xAA, 0xAA, 0xAA} length: 3];
、data1
data2
がメモリに0xAA
年代を持つことになり、一方のみ、その中にゴミ値を持っています。
私はAppleの開発者リファレンスを見ましたが、関連するものは何も見つかりませんでした。私が覚えている興味深いことの1つは、data1
の初期化が、実際には見えないバイトをゼロにしなければならないということでした。
私のコードで明らかに間違っているのか、NSData/MutableDataオブジェクトの根本的な誤解があるのでしょうか?どんな助けもありがとう。ありがとう!
編集:私は愚かだ...私がdata1
のメモリを見ると、*data1
ではなく、私が追加する値を見つけることができる。