資料型別long long是c++11中重新定義的,標準規定它最小是64bit
在這之前為了提供超過32bit的整數,各個開發環境(編譯器)分別定義了各自的64bit整數型別。這會導致**不相容
現在,c++11直接定義了long long型別
我猜許多人應該使用過這個型別,當然在c++11之前,這種嘗試會被編譯器無情拒絕,自c++11之後就不會在發生這樣地情況了。因此我認為:在c++11新特性中,long long一定是最容易被接受的乙個。多數程式設計師看到它時甚至不會意識到這是乙個新特性。
相應的,c++11規定,在指定long long
字面值型別時,使用ll
或者ll
。這也可以從long
的l
或者l
推斷出來。
另外,也可以像long
型別的字面值一樣使用u
字尾表明這是乙個無符號數
2ll
3ll100ull
小寫的ll雖然合法,但是容易和數字1混淆,還是用大寫的吧。
另外,要了解平台上long long大小的方法是檢視或者
中的巨集。與long long整型相關的一共有三個,如下:
C C 程式設計 型別
寬字元型別 char16 t char32 t c 11 起 wchar t 有符號整數型別 short int int long int long long int c 11 起 無符號整數型別 unsigned short int unsigned int unsigned long int u...
c語言long long型別賦值
long long unsigned int num 20140701092715 在c語言中編譯器會把沒有小數的數值常量預設為整形,這條語句編譯器會報警告 root localhost gcc o test 1.c 1.c in function main 1.c 6 warning intege...
格式化輸出LONGLONG型別
typedef int64 longlong 所以要想輸出就要看 int64使用什麼格式符了。通過查msdn中,發現是 i64。在格式化輸出則還需要結合乙個d,即 i64d。對於無符號的ulonglong,則是 i64u。例子 longlong nlarge 9999999888 wprintf l...