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:我试过了

我的结构调试结构;[数据 getBytes:&debugStruct 长度:sizeof(debugStruct)];

4

1 回答 1

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

请记住,当数据将被释放时, myStructPtr 将变为无效指针。

于 2013-11-15T07:58:24.920 回答