c编程语言中"1ULL"的含义是什么?

use*_*075 10 c

for (x = 0; x < 1ULL<<(2*length); ++x){
Run Code Online (Sandbox Code Playgroud)

以上这行是我下载的交流程序代码.它有一个"1ULL"部分.首先我认为这是一个错误.但代码编译并运行良好.任何人都可以请你解释一下这是什么意思.

谢谢....

hac*_*cks 10

后缀ULL为整数表示类型说明符.它的意思是

unsigned long long
Run Code Online (Sandbox Code Playgroud)

您可能还想阅读本文本文以获取更多详细信息.


nou*_*ney 7

这是一种向编译器发出信号表明该值必须被视为unsigned long long.


Bri*_*ain 5

这些字母修改文字1并使其成为类型unsigned long long.

这包含在C99(ISO/IEC 9899)§6.4.4.1整数常量中:

integer-suffix:
unsigned-suffix long-suffixopt
unsigned-suffix long-long-suffix
long-suffix unsigned-suffixopt
long-long-suffix unsigned-suffixopt
unsigned-suffix: one of
u U
long-suffix: one of
l L
long-long-suffix: one of
ll LL
Run Code Online (Sandbox Code Playgroud)