c 类型转换

double ←── float 高
long
unsigned
int ←── char,short 低
 
 
  图中横向箭头表示必须的转换,如两个float型数参加运算,虽然它们类型相同,但仍要先转成double型再进行运算,结果亦为double型。 纵向箭头表示当运算符两边的运算数为不同类型时的转换,如一个long 型数据与一个int型数据一起运算,需要先将int型数据转换为long型, 然后两者再进行运算,结果为long型。所有这些转换都是由系统自动进行的, 使用时你只需从中了解结果的类型即可。这些转换可以说是自动的,当然,C语言也提供了以显式的形式强制类型转换(int)的机制。
原文地址:https://www.cnblogs.com/Alex0111/p/5382582.html