0
我正試圖在uk64_t的GKScore上下文屬性中存儲一些遊戲相關信息 - 用新遊戲中心挑戰創建更好的遊戲體驗。但是,我沒有把它做好。我建了一個結構如下圖所示:如何在uint64_t上存儲遊戲中心挑戰的結構信息
typedef struct{
unsigned int gameMode;
unsigned int destroyed;
unsigned int duration;
} GameInfo;
我嘗試以下方法:
uint64_t myContext
GameInfo info;
info.gameMode = 2;
info.destroyed = 50;
info.duration = 100;
NSData *data = [NSData dataWithBytes:&info length:sizeof(info)];
[data getBytes:&myContext length:sizeof(myContext)];
的struct收拾到的NSData然後寫入字節myContext。
然後,我嘗試使用64位整數如下重新創建信息:但是
NSData *newData = [NSData dataWithBytes:&myContext length:sizeof(myContext)];
GameInfo *result = (GameInfo*) [newData bytes];
,當我退出的價值觀,我看到,我只能夠捕捉到的前兩個值( gameMode並銷燬)。如果我在結構中添加更多變量,我仍然只捕獲前兩個變量。
我在做什麼錯?有沒有更聰明的方法來做到這一點?
啊我傻,非常感謝你的澄清。 –