C语言隐含类型转换

在C语言的表达式中,如果一个运算符的各个操作数的类型不同,那么编译器就必须进行隐含的数据类型转换。

C语言按照一定的规则(通常被称为正常算术转换,即Usual Arithmetic Conversion)来进行类型转换。转换顺序是(由右往左转换):

double <-- float <-- unsigned long <-- long <-- unsigned int <-- int

也就是说,如果表达式中有一个操作数的排名比较靠后,那么首先应该将这个操作数转换成更靠前的那个类型再进行运算。

简单记忆方法就是: 有符号变成无符号,短类型变为长类型

posted on 2017-02-20 15:17  merlindu  阅读(781)  评论(0编辑  收藏  举报

导航