图2.2 图2.3
图中向左的箭头表示自动转换;如字符型和short型自动转换成整型。纵向的箭头表示运算对象为不同类型时转换的方向,如int型与double型数据进行运算,先将int型的数据转换成double型,然后在两个同类型数据间进行运算,结果为double型。
总之,如果两个操作对象有一个是float型或double型,则另一个数据要先转换为double型,运算结果为double型,如果参加运算的两个数据中最高级别为long则另一个数据先转换成long型,运算结果为long。千万不要理解什么类型的运算都转换成double型,也不要理解为转换是一级一级完成的。
如int 转换成double不是int->unsigned->long->double,而是直接转换int->double。
转换实例:
假定已指定i为整型变量,f为float变量,d为double型,e为 long型,类型转换如图2.3所示。注意:上述类型转换是由系统自动完成。
2.7 算术运算符和算术表达式
2.7.1 C语言运算符简介
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] 下一页
|