数据语言包括哪两大类?

心水是什么意思2022-07-07  19

因为sqrt函数被声明为

double sqrt(双x);

而你的表达式是18/4*sqrt(4.0)/8,

其中,数字18、4和8是整数,而sqrt(4.0)返回双精度类型。根据C语言中的转换规则(PS:相信你也知道这个,就不多说了),计算出来的结果当然是double类型。

在操作过程中,要先将不同类型的数据转换成统一的类型,然后再进行操作。转换规则如下图所示:

双浮动

长的

无符号的

int ← charshort

箭头仅指示数据类型的级别,从低到高。

1。左边的水平箭头表示一定的转换,比如字符数据必须转换成整数,短数据必须转换成int数据,浮点数据在运算中必须转换成双精度数据,以提高blindside的准确性。即使两个浮点数据加在一起,也会先转换成双精度数据再加在一起。

2。

当操作对象是不同类型时,垂直箭头指示转换的方向。例如,当int类型数据与double类型数据进行运算时,将int类型数据替换为double类型数据,然后在同类型(double类型)的两个数据之间进行运算,结果为double类型。

换句话说,如果一条数据是float或者double类型,那么另一条数据要先转换成double类型,运算结果就是double类型。

从上面可以看出,最后的结果是双!。

转载请注明原文地址:https://juke.outofmemory.cn/read/636883.html

最新回复(0)