自动类型转换和强制类型转换

自动类型转换和强制类型转换

标签(空格分隔): C 双学位高级语言程序设计 C算术运算和表达式


C语言中经常遇到不同数据类型在同一运算中转化的情况,这遵循下述规则。

long double > double > float > unsigned long > long > unsigned int > int > char、short

虽然自动类型转换使数据精度不容易丢失,但是他的自动转换常常带来一些难以察觉的数据错误,因此,我们也要用到强制类型转换(简称“强转”)。

强转,指的是强制转换数据类型。就像

int a,b;
float c;
a = 11;
b = 2;
c = a/b;
printf("%f",c);

此时,输出c=5。但是,如果代码6.用下面这一行代码来代替

c = (float)(a/b);

就会输出c=5.5.这时我们就用了强转,将a/b的数据类型临时变成了浮点型。但是注意,这只是临时将数据变成了浮点型,而数据的类型仍为整形。

posted @ 2017-12-12 08:43  CF过2100就买ARCTERYX  阅读(101)  评论(0编辑  收藏  举报