3
A
回答
4
intN_t
是N
位長一個確切的寬度整數類型。每C11草案N1570 7.2.1.1它們被定義爲:
typedef名intN_t表示具有寬度N,沒有填充比特,和一個二的補碼錶示的符號整數類型。因此,int8_t表示寬度恰好爲8位的帶符號整數類型。
然而
這些類型都是可選的。但是,如果實現提供寬度爲8,16,32或64位的整數類型,沒有填充位,並且(對於有符號類型)具有二進制補碼錶示,則它應該定義相應的typedef名稱。
這些類型在C和C++中有效。我們之所以有這些正常short
,int
和long long
對它們的大小沒有保證,除了最小範圍
在C#中,這將等同於Int16的,的Int32和Int64的類型。在java的,我們可以用byte
,short
,int
和long
那些都是guaranteed to be of an exact width.
5
C++標準要求int8_t
,int16_t
,int32_t
和int64_t
是完全指定的寬度,與u
前綴無符號對應,只有在目標平臺上存在這樣的類型。是的,這些都是有效的,C中的標準類型.Java和C#不包含相同名稱的此類整數數據類型。
相關類型是intN_least_t
和intN_fast_t
,其中「最少」類型至少具有指定的位數。
0
相關問題
- 1. int8_t和int64_t的最小值
- 2. Java編譯器與Linux/Windows上的編譯器相同嗎?
- 3. 兼容編譯器可以中斷uint32_t - > int16_t - > int32_t轉換嗎?
- 4. int32_t int64_t(或浮動)
- 5. 變量的類型int32_t和的int64_t等
- 6. Ansi C int16_t引用int8_t數組
- 7. 爲什麼在C++中bool和int8_t的常見類型是int32_t?
- 8. 針對不同編譯器的不同輸出 - C和C++
- 9. ffmpeg:相同的編譯在不同的機器上表現不同
- 10. 不同的C編譯器有不同的參數傳遞規則嗎?
- 11. Stack你可以有不同的編譯器和解析器嗎?
- 12. g ++編譯器與C++的gcc編譯器相同嗎? (Mac OS X)
- 13. 不同的文件有不同的範圍嗎?
- 14. 相同的程序相同的編譯器,但我有不同的輸出在c
- 15. SUMIF - 不同行上的範圍和值
- 16. 在FreeBSD和Linux中,Shell for-loop的範圍有所不同嗎?
- 17. 在不同的編譯單元中編譯具有不同編譯標誌的相同頭文件
- 18. C/C++用不同的編譯器編譯程序的不同部分
- 19. 如何在不編譯它的情況下在不同的體系結構上編譯相同的C代碼?
- 20. JSF中的Flash範圍與會話範圍相同嗎?
- 21. 相同的代碼,在不同的C編譯器中使用printf()和write()不同的打印順序
- 22. 有效的編譯器每次都會編譯完全相同的結果嗎?
- 23. C++:相同的代碼和編譯器,但每次構建後輸出不同
- 24. QString在相同的編譯(但不同的系統)上返回不同的sting
- 25. $根範圍與具有不同值的相同變量
- 26. 命名空間與C++中的範圍相同嗎?
- 27. 跨不同編譯器的C++庫
- 28. 機器之間「短」的範圍有所不同嗎?
- 29. 在不同編譯器上產生不同輸出的代碼
- 30. 在不同的範圍
你能引用你的報價來源嗎? (哪種C99類型的草案,還是來自真正的草案?)http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf似乎是某種草案類似(完全一樣?)的措辭。 – Yakk
@Yakk我加了我的源碼。我完全錯過了那部分。抱歉。 – NathanOliver