变量数据类型转换
变量的数据类型转换有两种:自动转换和强制转换,但注意转换都是为了满足运算而临时进行的转换,并不改变定义变量时的类型。
自动类型转换
自动转换是指当在进行数据运算时,计算机自动进行类型转换,有以下几点规则:
1.当不同类型的数据进行运算时,计算机会自动转换成同一类型,并且向增加数据长度的方向进行转换,以保证精度。例如:int型数据和float型数据进行运算时,会将int型数据转换成float型参与运算;
2.所有的浮点运算都是以双精度(double)型进行运算,仅含float型的数据运算时也要先转换成double型;
3.在赋值运算中,赋值号两边的数据长度不一致时,会将右边的数据转换成左边量的类型。若右边的数据长度比左边长时,会丢失一部分数据,精度降低,并且是直接将多余数据截断。(截断式误差)。
强制类型转换
强制类型转换为用户强制将类型转换。
形式为:(类型说明符)表达式
如:(int)a (int)(x+y)
当表达式有多个变量时要用括号括起来,表示把计算结果转换类型,若写成(int)x+y,则是将x转换成int型在加y。
注意:
1.类型说明符和表达式都必须加括号;
2.自动类型转换和强制类型转换都是为了满足运算而临时进行的转换,并不改变定义变量时的类型。