为什么我需要输入3.14f而不是3.14才能禁用所有这些警告?这有一个连贯的原因吗?
当我给sizeof(a),其中a=13.33,浮子变量时,大小为4个字节.但如果我sizeof(13.33)直接给出,大小是8字节.
我不明白发生了什么.有人可以帮忙吗?
我正在读教科书,上面写道:
C++默认将您在程序源代码中输入的所有浮点数(例如7.33和0.0975)视为double值.
我发现这有点奇怪,从未听说过.似乎浪费了?如果不指定,为什么要获得额外的精度?为什么有两种不同的类型意味着相同的东西?长双人怎么样?
假设浮点数float a = (1.5 * b)在哪里b,那么这个表达式是如何评估的?被1.5视为双或浮动?
是1.0e+1返回float值还是int值?
当我打印1.0e+1它时,10但是当我这样做时,sizeof(1.0e+1)它给了我8.
我有两个重载方法
double Sum(double n1, double n2)
{
return n1 + n2;
}
float Sum(float n1, float n2)
{
return n1 + n2;
}
Run Code Online (Sandbox Code Playgroud)
当我调用Sum(5.5,5.5)时,调用具有双返回类型的方法.我的问题是为什么调用带有双返回类型的方法,为什么不使用float返回类型的方法.编译器如何决定应该调用哪个方法.