类型转换
包含两种转换,分别是隐式转换(自动转换)、显式转换(手动转换)。
隐式转换
它通常是将一种较小
的类型自动
转换为较大
的类型,例如,将int类型转换为long类型或float类型转换为double类型。隐式类型转换也可能
会导致数据精度丢失
或数据截断
。
c
float a = 1;
printf("自动转换:%f", a); // 自动转换:1.000000
显式转换
显式类型转换需要使用强制类型转换运算符(type casting operator)
,它可以将一个数据类型的值强制转换为另一种数据类型的值。强制类型转换可以使程序员在必要时对数据类型进行更精确的控制,但也可能会导致数据丢失或截断
。
c
double d = 3.14159;
int i = (int)d; // 显式将double类型转换为int类型