2016-08-04 11 views
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]; 

data1data2がメモリに0xAA年代を持つことになり、一方のみ、その中にゴミ値を持っています。

私はAppleの開発者リファレンスを見ましたが、関連するものは何も見つかりませんでした。私が覚えている興味深いことの1つは、data1の初期化が、実際には見えないバイトをゼロにしなければならないということでした。

私のコードで明らかに間違っているのか、NSData/MutableDataオブジェクトの根本的な誤解があるのでしょうか?どんな助けもありがとう。ありがとう!

編集:私は愚かだ...私がdata1のメモリを見ると、*data1ではなく、私が追加する値を見つけることができる。

答えて

0

私は間違った値を見ていましたが、*data1の代わりにdata1のメモリを調べていたはずです。

関連する問題