将一种数据类型转换为另一种数据类型称为类型转换。
隐式类型转换显式类型转换 ul>隐式类型转换当操作数具有不同数据类型时,编译器提供隐式类型转换。
它是由编译器通过将较小的数据类型转换为较大的数据类型自动完成的。
int i,x;float f;double d;long int l;
这里,上面的表达式最终计算结果为“double”值。
示例以下是隐式类型转换的示例 -
int x;for(x=97; x<=122; x++){ printf("%c", x); /*implicit casting from int to char %c*/}
显式类型转换显式类型转换由用户使用 (type) 运算符完成。
在执行转换之前,会进行运行时检查以查看目标类型是否可以保存源值。
int a,c;float b;c = (int) a + b
此处,'a+b' 的结果显式转换为 'int',然后赋值给 'c'。
示例以下是显式类型的示例转换 -
int x;for(x=97; x<=122; x++){ printf("%c", (char)x); /*explicit casting from int to char*/}
让我们通过示例了解两种类型转换之间的区别 -
示例(隐式转换) 实时演示
#include<stdio.h>main(){ int i=40; float a; //implicit conversion a=i; printf("implicit value:%f
",a);}
输出implicit value:40.000000
示例(显式转换) 实时演示
#include<stdio.h>main(){ int i=40; short a; //explicit conversion a=(short)i; printf("explicit value:%d
",a);}
输出explicit value:40
以上就是c语言中的隐式类型转换和显式类型转换是什么?的详细内容。