3 回答

TA貢獻1909條經驗 獲得超7個贊
從gcc 手冊:
ISO C99支持至少64位寬的整數的數據類型,作為擴展,GCC在C90模式和C ++中支持它們。只需寫long long int一個有符號整數或unsigned long long int一個無符號整數。要使type為整數常量long long int,請將后綴添加LL到整數。要使type為整數常量unsigned long long int,請將后綴添加ULL到整數。

TA貢獻1998條經驗 獲得超6個贊
我提出了一個新的答案,因為我認識到當前的答案并非來自跨平臺來源。在C ++ 11條標準規定文字與U
/ u
和LL
/ ll
后綴是一種類型的文字:unsigned long long int
[ 源 ]
U
/ u
是無符號整數的C / C ++后綴。LL
/ ll
是long long
整數的C / C ++后綴,它是C ++ 11中的新類型,并且要求長度至少為64位。
筆記:
例如
int
,如果使用任何修飾符,則可以省略關鍵字unsigned long long
。因此,這將定義one
為unsigned long long int
,并分配給它的任何數量將static_cast
到unsigned long long int
:unsigned long long one = 1
c ++ 11標志著的到來
auto
。它將變量類型設置為聲明時分配給它的類型。例如,因為2ULL
是unsigned long long int
文字two
將被定義為unsigned long long int
:auto two = 2ULL
c ++ 14引入了與順序無關的文字后綴。以前,
U
/u
后綴必須在任何大小的后綴之前。但是大約在c ++ 14之后,后綴以任何一種順序被接受,所以現在既然3LLU
是unsigned long long int
文字three
將被定義為unsigned long long int
:auto three = 3LLU
- 3 回答
- 0 關注
- 1591 瀏覽
添加回答
舉報