C语言不同数据类型怎么转换成同一数据类型的

如题所述

第1个回答  2012-03-25
大概有三种情况:
1.表达式中有几种可计算类型时,自动向“高”看齐,即自动把位数少的类型通过填加无效0而达到表达式中位数最多的类型,计算结果也是“高”类型。这种转换不需程序员干预,也不损失数据。
2.通过赋值自动转换,即自动将右边表达式计算结果的类型转换为表达式左边变量的类型。这种转换也无需程序员干预,但若右边的类型“高”于左边的类型则要丢失数据,比如int n=3.999999,其n的值最后是3,不作“四舍五入”处理。反之,“低”类型赋给“高”类型时不丢失数据。
3.运算中强制转换,当表达式中需要对某变量的类型作临时变更时采用这种方式,需要人式干预。如:double pi=3.1415925,临时只需pi的整数部分时可以(int)pi这样表达,虽然pi的值不变仍为3.1415925,但做运算时只取pi的整数部分3。例如:double c=pi-(int)pi,则n=0.1415925。
供参考,希望有帮助。
第2个回答  2012-03-25
强制类型转换就行了 如果long i 强制转换成正整型(int)i
相似回答
大家正在搜