基本数据类型的隐式转换

来源:互联网 发布:iphone手机壳品牌知乎 编辑:程序博客网 时间:2024/06/12 12:34

基本数据类型( int,          short,          long int,          long  long,    c har,    float,    double,     long double )

基本数据类型最大的特点:基本数据类型之间可以进行隐式转换

例如:void main ()

{

char ch=‘a’;

int a=0;

a=ch;                                                                                                                                                                等同于a=(int)ch;

ch=a;       这里可以由编译器进行隐式转换。可以把字符型变量ch给整型变量a,反之也行。           等同于ch=(char);  这里是显示转换。

}

基本数据类型之间进行隐式转换的特点:

把表示范围小的给表示范围大的需要进行扩充扩充的时候跟目标没关,跟自身有关。如果自身是有符号的类型,扩充的时候给符号位。如果自身类型是无符号的,扩充的时候添0

把表示范围大的给表示范围小的要进行截取。截取权位小的。

参与运算时进行进行数据类型提升的规则:

(1)如果是char  short  bool 和int 型转换的时候都要转为int  。  如果有unsignde int 就全转为无符号整型。

(2)如果float参与运算时,都要转为long  double (双精度double型)。

例如:char ch='a';

           int a=0;

          a=ch+23+12.23;这里把23默认为整型,然后把char型的ch转为整型与23相加得到结果。然后把相加的结果和12.23一起转换为double 型。

注意:只有参与运算的两个类型才能进行类型的提升。






原创粉丝点击