1

私はそのような構造体を持っています

struct myStruct
{
    UInt8 _foo;
    float _bar[3];
    float _fooBar[3];
} _ThisIsMyStruct;

私のC ++コードで。これは const char にキャストされます。

char* sendThisStuff = static_cast<char*>(static_cast<void*>(& _ThisIsMyStruct));

そしてudp経由でiOSアプリに送信されます。クライアント側で GCDAsyncUdpSocket を使用して udp パケットを受信して​​います。これにより、NSData オブジェクトが得られます。私の問題は、それを同じ構造体に戻す方法です。

ETA: やってみた

myStruct debugStruct; [データ getBytes:&debugStruct 長さ:sizeof(debugStruct)];

4

1 に答える 1

0
NSData* data;
myStruct* myStructPtr = (myStruct*)data.bytes;

データの割り当てが解除されると、myStructPtr が無効なポインターになることに注意してください。

于 2013-11-15T07:58:24.920 に答える