在C语言表达式中如果使用了多种数据类型,c编译系统会自动完成类型的转换。这为用户提供了方便,但也可能会存在危险,尤其在无意地混合使用了不同类型数据的情况下。例如:
float a=2.7;
int b;
b=(a+2.4)%2;
这段程序由于在求余运算符“%”左侧的a+2.4是浮点型,所以编译的时候会报错。
在编程中,应该避免自动类型转换。需要类型转换的,尽量使用强制类型转换来完成。强制类型转换的一般形式:
(类型名)(表达式)
例如,上例可以改成:
float a=2.7; int b;
b-(int)(a+2.4)%2;
已有 22658 名学员学习以下课程通过考试
最需教育客户端 软件问题一手掌握
去 App Store 免费下载 iOS 客户端
点击加载更多评论>>