1、数据类型之间的转换
在C语言程序的表达式或变量赋值运算中,有时会出现运算对象的数据不一致的情况。C语言允许任何标准数据类型之间的隐式转换。所谓隐式转换是指系统会自动对相关数据类型进行转换,不需要强制干预。
隐式转换按以下从左到右的优先级自动进行:
bit-char-int-long-float
对于有符号和无符号型数据,无符号型数据的优先级大于有符号型数据:unsigned>signed
隐式数据转换时,低优先级的数据类型转为高优先级的数据类型,不一定非要按照上面的顺序逐级转换,可以隔级转换,例如将bit型赋值给int型变量时,bit型数据直接转换为int型,而不是先将bit型转换为char型,然后再转换为int型,
2、一般来说,如果有几个不同类型的数据同时参加运算,先将低级别类型的数据转换成高级别类型数据,再做运算处理,并且运算结果为高级别类型数据。