2012-08-28 35 views
5

我想這是一個已被問了上千次的問題,但我找不到直接的答案。什麼是uint32和uint64的OSX,C等價物?

我想使用XCode將非常短的C函數(最初爲Windows編寫)移植到OSX中。

我已經創建了一個XCode終端應用程序項目,並且已將代碼複製並粘貼到項目中。 XCode給了我一大堆錯誤告訴我,類型爲uint32uint64是未知類型。

什麼是OSX中的等效值類型?

回答

14

您可以通過導入stdint.h使用uint32_tuint64_t

0

嘗試這些;-) UInt32 lala; UInt64 lolo;

誤讀的問題。如果你創建一個只有終端的項目,你將不會鏈接Cocoa/Foundation和Carbon。在後者UInt16/32/64中進行了類型化。

+1

我認爲那些是碳類型。 – zneak

2

uint32_tuint64_t - 均根據C99定義在stdint.h中定義。

其他是微軟專有的解決方案。

3

你想要的是POSIX和C標準整數類型。這些是在Mac OSX,Linux,Solaris等上使用的東西。它們是uint8_t一直到uint64_t。還有int8_tuint8_t

+0

就像澄清一樣,通過「一路」,這個_really_意味着一路:有可用的整數類型,其大小不是2的冪('int24_t','int40_t','int48_t','int56_t'和他們未簽名的同行)。 – zneak

+2

@zneak,這些不需要定義。但是,如果平臺上存在這種類型(具有該寬度),則將定義它們。 –

相關問題