如何更安全地执行除法:
long long / int
还是 long long / (long long) int
?
在将 long long 除以 int 时,是否可能存在一些安全问题或逻辑问题?
int / int => returns int
float / float => returns float
double /double => returns double
int / double => returns double
int / float => returns float
正如已经提到的,从低精度到高精度(例如从float到double再到long double),没有转换问题——列表中的每个更高精度类型都可以容纳所有较低精度类型的值,因此转换不会丢失信息。
对于整数提升(例如long int和int)
如果任一操作数是long int,则另一个操作数将被转换为long int,并且这就是结果的类型。
因此,这是安全的(当然除以零除外)。有关更多详细信息。
0
。 - Iharob Al Asimi