通读《C++ primer plus》— C++中的5种数据类型转换方式

1、始化和赋值时转换

比如
int a=1;
long b=2147483647;
a=b;
上面的代码并不会有问题,。然而将a更改为float类型,将会出现错误。
需要注意的一种情况是:
把0赋值给bool类型变量,会被转换成False,非零的会被转换成True。
把字符串赋值给bool,是不可以。
但是反向可以,比如把False赋值给字符串变量,得到的是:"\u0000"
总之,尽量不要跨类型赋值,否则错误是很难避免的。

2、{}形式的转换

书中给的例子是:char c {66};
此行代码执行以后,C的数据是B。这个不难理解,在ASCII表中,十进制数据66,对应的正是字母B。
在这里插入图片描述
但是如果我们给10000这样的数据,超出了表的范围,将会报错。
在这里插入图片描述
我们得到了一个关于字符串宽度的报错。

3、表达式中的转换

先看如下代码:
short a=100;
short b=200;
short c=a+b;
表面上看

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值