ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
#### 24. 强制类型转换 强制类型转换是把变量从一种类型转换为另一种数据类型。例如,如果您想存储一个 long 类型的值到一个简单的整型中,您需要把 long 类型强制转换为 int 类型。您可以使用**强制类型转换运算符**来把值显式地从一种类型转换为另一种类型,如下所示: ~~~ (type_name) expression ~~~ 请看下面的实例,使用强制类型转换运算符把一个整数变量除以另一个整数变量,得到一个浮点数: ~~~ void main(){ void main(){ int sum = 20,count = 3; double value,value2; value = (double)sum / count; value2 = sum / count; printf("Value 强转 : %f Value2 wei强转 : %f\n ", value ,value2); } } ~~~ 输出: ~~~ Value 强转 : 6.666667 Value2 wei强转 : 6.000000 ~~~ **整数提升** 整数提升是指把小于 **int** 或 **unsigned int** 的整数类型转换为 **int** 或 **unsigned int** 的过程。请看下面的实例,在 int 中添加一个字符: ~~~ void main(){ //整数提升 int i= 17; char c = 'c'; //在 ascii 中的值表示 99 int sum2; sum2 = i + c; printf("Value of sum : %d\n", sum2 ); } ~~~ 输出: ~~~ Value of sum : 116 ~~~ 在这里,sum 的值为 116,因为编译器进行了整数提升,在执行实际加法运算时,把 'c' 的值转换为对应的 ascii 值。