Q
LL是什麼意思?
2
A
回答
3
它在段落2.14中指定。在C++ 11標準的2:
2.14.2整數常量
[...]
長長後綴:的
一個ll LL
第2.14.2/2,並且特別是表6,那張指定後綴爲十進制,八和十六進制常數,並且它們被給定類型的含義。
由於0
是一個八進制文字,的0LL
類型是long long int
:
#include <type_traits>
int main()
{
// Won't fire
static_assert(std::is_same<decltype(0LL), long long int>::value, "Ouch!");
}
2
LL
是long-long的後綴,在大多數(所有?)C/C++實現中都是64位。因此,0LL
是一個值爲0的64位文字。
這與L
是長文字的後綴相似,在大多數32位和64位C/C++實現中,其大小與非長的int
。 (在16位實現中,int
的大小通常爲16位,所以後綴L
將指示32位整數字面量,而默認值爲16位。)
1
0LL
是整數字面。它的後綴是LL
,它確定了它可能具有的可能類型集。對於十進制常量,類型將爲long long int
。對於八進制或十六進制常量,如果需要,類型將爲long long int
或unsigned long long int
。在0LL
的情況下,文字的類型爲long long int
。
整數常量的類型是表6中相應列表中的第一個,其值可以表示。
表6 - 整數類型的常量
Suffix Decimal constants Octal or hexadecimal constant ... ll or LL long long int long long int unsigned long long int ...
相關問題
- 1. 是什麼意思:是什麼意思?
- 2. %{}是什麼意思?
- 3. '#'是什麼意思?
- 4. 「?」是什麼意思?
- 5. #{...}是什麼意思?
- 6. || =是什麼意思?
- 7. @是什麼意思
- 8. $$ $$是什麼意思?
- 9. `/ * @`是什麼意思?
- 10. 「=」是什麼意思
- 11. + =是什麼意思?
- 12. {..} [..]是什麼意思?
- 13. 什麼是:!:意思?
- 14. @ []是什麼意思?
- 15. 什麼是「||」意思?
- 16. /([^.]*)\.(.*)/是什麼意思?
- 17. &**是什麼意思?
- 18. @(...)是什麼意思?
- 19. &@是什麼意思?
- 20. 「\\。\」,「\ ?? \」,「\\?\」,「\\」是什麼意思?
- 21. &=是什麼意思?
- 22. {%=%}是什麼意思?
- 23. 是什麼意思?
- 24. %%是什麼意思?
- 25. {}是什麼意思?
- 26. 「*&」是什麼意思?
- 27. 「_」是什麼意思?
- 28. Groovy,什麼意思 - >意思是
- 29. 什麼意思前綴::意思是
- 30. 是什麼意思,在Python中是什麼意思?
何時八進制和十六進制的文字變成無符號的「必要時」,利用我們在這裏不會提及其他後綴時除外? – unwind 2013-03-22 16:19:22
@unwind當該值不適合'long long int'但適合在'unsigned long long int'內。只有當它不適合'long long int'時才被考慮。 – 2013-03-22 16:19:53
@unwind當它們不符合簽名類型時。說,整數是16位。 0x7fff適合int。 0x8000不適合int,但符合unsigned int。 – 2013-03-22 16:20:37