ANSI C99標准中並沒有64位整數類型。其次,許多實際的編譯器,都實現了對64位整數類型的支持。 其中關鍵是這個表格:
| 變量定義 | 輸出方式 | gcc(mingw32) | g++(mingw32) | gcc(linux i386) | g++(linux i386) | MicrosoftVisual C++ 6.0 |
|---|---|---|---|---|---|---|
| long long | “%lld” | 錯誤 | 錯誤 | 正確 | 正確 | 無法編譯 |
| long long | “%I64d” | 正確 | 正確 | 錯誤 | 錯誤 | 無法編譯 |
| __int64 | “lld” | 錯誤 | 錯誤 | 無法編譯 | 無法編譯 | 錯誤 |
| __int64 | “%I64d” | 正確 | 正確 | 無法編譯 | 無法編譯 | 正確 |
| long long | cout | 非C++ | 正確 | 非C++ | 正確 | 無法編譯 |
| __int64 | cout | 非C++ | 正確 | 非C++ | 無法編譯 | 無法編譯 |
| long long | printint64() | 正確 | 正確 | 正確 | 正確 | 無法編譯 |
我們注意到,VC++ 6.0對64位整數的支持是最少的。
轉載源自http://www.cnblogs.com/fzd19zx/archive/2011/01/21/1941587.html
