计算机二级C++知识点:强制类型转换
求学快递网计算机等级考试专题重点推荐:2016年计算机二级考试报考时间 、2016年计算机二级考试证书领取时间、2016年计算机二级考试报考指南、2016年计算机二级考试大纲、2016年计算机二级考试政策、2016年计算机二级考试报考条件、2016年计算机二级考试科目等最新新闻资讯。
三、强制类型转换
有时候,根据表达式的需要,某个数据需要被当成另外的数据类型来处理,这时,就需要强制编译器把变量或常数由声明时的类型转换成需要的类型。为此,就要使用强制类型转换说明,格式如下:
int* iptr=(int*) &table;
表达式的前缀(int*)就是传统C风格的强制类型转换说明(typecast),又可称为强制转换说明(cast)。强制转换说明告诉编译器把表达式转换成指定的类型。有些情况下强制转换是禁用的,例如不能把一个结构类型转换成其他任何类型。数字类型和数字类型、指针和指针之间可以相互转换。当然,数字类型和指针类型也可以相互转换,但通常认为这样做是不安全而且也是没必要的。强制类型转换可以避免编译器的警告。
long int el=123;
short i=(int) el;
float m=34.56;
int i=(int) m;
上面两个都是C风格的强制类型转换,C++还增加了一种转换方式,比较一下上面和下面这个书写方式的不同:
long int el=123;
short i=int (el);
float m=34.56;
int i=int (m);
使用强制类型转换的最大好处就是:禁止编译器对你故意去做的事发出警告。但是,利用强制类型转换说明使得编译器的类型检查机制失效,这不是明智的选择。通常,是不提倡进行强制类型转换的。除非不可避免,如要调用malloc()函数时要用的void型指针转换成指定类型指针。
关注求学快递网计算机等级考试专题,帮你了解最新的2016年计算机二级考试资讯服务和2016计算机二级考试成绩查询,让你轻松备考计算机等级考试!
求学快递网计算机等级考试专题的小编们根据网民搜索喜爱,第一时间公布2016年计算机二级模拟试题、2016年计算机二级考试应试技巧、计算机二级考试历年真题、2016年计算机二级考试章节复习供广大求学爱好者学习使用,欢迎继续关注求学快递网计算机等级考试专题,并给我们提供宝贵的意见!