C ++:0和0.0之间的差异?

我很清楚00.0 (int和double)之间的区别。

但是0.0.0之间有什么区别(请注意。)?

非常感谢提前,

阿克塞尔

没有区别。 两个文字都是双倍的。 从C ++ – 语法:

 fractional-constant: digit-sequenceopt . digit-sequence digit-sequence . 

请参阅: 超链接C ++ BNF语法

不,那里没有。

不,你知道,你也可以写.0。

只是拥有. 作为数字的一部分,它将其标识为浮点类型。

这个:

  cout << (5 / 2) << endl; cout << (5. / 2) << endl; cout << (5.0 / 2) << endl; 

打印这个:

  2 2.5 2.5 

您可以看到第一行使用整数除法(因为两个值都是整数),而5.5.0都被识别为浮点类型,因此它们触发“正常除法”。

0的类型为int,但可以转换为double, 0.0的类型为double,但可以转换为int。
两个演员都是隐含的。