3 回答

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

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