C语言如何掌握强制类型转换的精髓

描述

强制类型转换是把变量从一种类型转换为另一种数据类型。例如,如果您想存储一个 long 类型的值到一个简单的整型中,您需要把 long 类型强制转换为 int 类型。您可以使用强制类型转换运算符来把值显式地从一种类型转换为另一种类型,如下所示:

(type_name) expression

请看下面的实例,使用强制类型转换运算符把一个整数变量除以另一个整数变量,得到一个浮点数:

#include int main()

{   int sum = 17, count = 5;

double mean;   mean = (double) sum / count;

printf("Value of mean : %fn", mean ); }

当上面的代码被编译和执行时,它会产生下列结果:

Value of mean : 3.400000

 

 

编译器

#include int main()

{   int  i = 17;

char c = 'c'; /* ascii 值是 99 */   int sum;   sum = i + c;

printf("Value of sum : %dn", sum ); }

当上面的代码被编译和执行时,它会产生下列结果:

Value of sum : 116

 

 

编译器

编译器

常用的算术转换不适用于赋值运算符、逻辑运算符 && 和 ||。让我们看看下面的实例来理解这个概念:

#include int main(){   int  i = 17;

char c = 'c'; /* ascii 值是 99 */   float sum;   sum = i + c;

printf("Value of sum : %fn", sum ); }

当上面的代码被编译和执行时,它会产生下列结果:

Value of sum : 116.000000

在这里,c 首先被转换为整数,但是由于最后的值是 double 型的,所以会应用常用的算术转换,编译器会把 i 和 c 转换为浮点型,并把它们相加得到一个浮点数。

审核编辑:黄飞

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分