c++坑点:单引号的坑(单引号内多个字符)

   众所周知,在c++之中,双引号是用来表示其包括的内容为字符串,而单引号包括的内容表示其包括的为一个字符,那单引号的括起内容的实质是什么呢?

   于是,我开始了我的实践(作死)之路:

 

 

 

 

为什么当输出'AA'时,会输出这么神奇的数字16705?

 

下面我们就来研究一下这个问题:

Int 类型占据四个字节,即16位二进制

A的二进制为0100 0001,因此它的数值为65.

当有两个AA时,其为0100 0001 0100 0001

当将二进制0100000101000001转换为十进制时,其数字为16705

为什么在有的编译器当超出四个字符时会出现警告甚至报错,因为在c++之中,int类型为四个字节,即十六位,而每个字符类型为一个字节即四位。当超过四个字符时,有的编译器会自动转换为更高位数据类型,即long甚至long long(尚待实验)

 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值