C++11中强制类型转化详解(上)

大家好,消失半年的我又来更新文章了,你们还好吗?上次更新没想到有那么多人看。今天我们来详细讲解一下C/C++的强制类型转化,以及C++11中新增的四种转化方式的用法,废话不多说,马上发车。

 首先,我们应该都了解C语言中有隐式转化和显示转化,这里给大家举个例子,如下图所示:

上图中,我们定义了一个单精度浮点型的PI,然后赋值给了整型a。编译器是允许这种形势的赋值的,这种就叫做隐式转化(言下之意就是看不到的转化)。隐式转换只能存在于简单的转换中,比如char类型与int类型互相转化,int类型与float类型互相转化。这也是我们常常会出现的转化,但是不建议这样使用,因为容易在无意识中丢失数据。一般标准中的开发我们采取显示转化,甚至不会出现上图的隐式转化(容易丢失数据,而且也没什么意义)

那么显式转化是什么呢?其实就是字面意思,让程序员能看到的转化,这种转化非常常见,在C++11的四种转化类型没有问世之前,主要用的就是显示转化,以致于现在很多老C++程序员还在使用这种转化,相对于C++11的四种转化方式,C语言的显示转化非常的直观,也能被大部分新手程序员所接受,C语言显示转化如下图所示:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值