2012-08-26 41 views
2

我不確定我做了什麼 - 我的編碼很快樂......我認爲它可能與更新Xcode到4.1.1有關,但突然間,當我構建並運行我的項目,下面的編譯器警告在大約20個不同的cocos2d模塊顯示出來..Cocos2d unsigned int無處不在

「格式指定unsigned int類型,但參數有[」 CCTimer'(或它在任何模塊)

行問題中的cocos2d模塊是:

return [NSString stringWithFormat:@"<%@ = %08X | target:%@ selector:(%@)>", [self class], self, [target class], NSStringFromSelector(selector)]; 

它是'%08X't帽子是造成問題..

而且,由於這個錯誤,我不能編譯在我的iPhone,儘管它運行在模擬器罰款。我更新了我的手機操作系統到最新版本,但它並沒有幫助..

有沒有其他人有過嗎?

回答

1

這是cocos2d中的許多格式化字符串之一,它試圖打印出指針值。在%08X工作的時候,正確的做法是使用%p。所以你可以改變這一行:

[NSString stringWithFormat:@"<%@ = %p | target:%@ selector:(%@)>", [self class], self, [target class], NSStringFromSelector(selector)]; 

你將不得不改變所有這些行,大約有十幾個這樣的行。

例輸出的人好奇的差別看起來像什麼:

%08X: 0976DC80 
%p: 0x976dc80 

PS:我最近修復了所有這些不正確的cocos2d日誌中Kobold2D

+0

謝謝!順便說一下,PS的偉大的書! – CarlosTheJackal

+0

您可能會被固定在狗頭人中,但您忘記將其修復入您的入門套件中:/ – user513790

相關問題