将一种数据类型转换为另一种数据类型称为类型转换。
- 隐式类型转换
- 显式类型转换 ul>
当操作数具有不同数据类型时,编译器提供隐式类型转换。
它是由编译器通过将较小的数据类型转换为较大的数据类型自动完成的。
隐式类型转换
int i,x; float f; double d; long int l;

这里,上面的表达式最终计算结果为“double”值。
立即学习“C语言免费学习笔记(深入)”;
示例
以下是隐式类型转换的示例 -
int x;
for(x=97; x<=122; x++){
printf("%c", x); /*Implicit casting from int to char %c*/
}显式类型转换
显式类型转换由用户使用 (type) 运算符完成。
酒店管理系统项目源码(三层开发)下载系统采用VS2008+Sql2005开发适用于中小型的酒店管理,全部采用三层架构,ASP.NET开发,运用CSS加DIV的界面布局,完整的源代码和数据库设计,是你不可多得的参考资料。 有客房管理、房间类型管理、入住和退房管理等简单功能HotelManager为网站目录DB_51aspx下为Sql2005数据库,附加即可(Sql2000格式数据库转换后稍后发布)
-
在执行转换之前,会进行运行时检查以查看目标类型是否可以保存源值。
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*/
}让我们通过示例了解两种类型转换之间的区别 -
示例(隐式转换)
实时演示
#includemain(){ int i=40; float a; //Implicit conversion a=i; printf("implicit value:%f ",a); }
输出
Implicit value:40.000000
示例(显式转换)
实时演示
#includemain(){ int i=40; short a; //Explicit conversion a=(short)i; printf("explicit value:%d ",a); }
输出
Explicit value:40










