数字末尾的L是做什么的?

时间:2012-05-22 07:19:26

标签: c++

  

可能重复:
  What does the “L” mean at the end of an integer literal?

例如

int one = 20;
int two = 20L;
cout << "one: " << one << " two: " << two << endl;
cout << "one: " << sizeof(one) << " two: " << sizeof(two) << endl;

两次输出20次,然后输出两次。

4 个答案:

答案 0 :(得分:5)

在这种情况下,L什么都不做。

数字之后的L给出常量long类型,但因为在这种情况下,常量会立即分配给int变量,所以没有任何更改。

答案 1 :(得分:0)

L告诉编译器该数字是Long类型。 Long是大于或等于int的有符号类型。在大多数现代编译器中,这意味着该数字将占用4个字节的内存。这恰好与大多数编译器上的int相同,因此在这种情况下它不起作用。

答案 2 :(得分:0)

请参阅this链接 它说:

文字常量(通常称为文字或常量)是不变量,其值由其表示隐含。

base:decimal

示例:1L

描述: 任何十进制数字(数字0-9)不以0(零)开头,后跟L或l

答案 3 :(得分:-1)

L表示long没有别的亲爱的......