((C ++)试图将双精度转换为整数(解释)

问题描述 投票:-7回答:1

在示例中看到了

double x = 50.2
cout << (double)(int)(x);

这很好用,也可以不使用(double),那为什么要在那儿加(double)?

c++
1个回答
0
投票

您不必在那里添加(Double),为什么呢。您正在将50.2转换为中间值为50,然后将50转换回为50的两倍停留值(如果打印)。我能想到的唯一原因是,如果它在某个带有返回双精度值的函数内,或者要提取双精度值的整数部分,但这根本不是一个好习惯。

© www.soinside.com 2019 - 2024. All rights reserved.