c++中整型变量和字符变量在任何条件下都可互相替换么?

[复制链接]
查看11 | 回复3 | 2016-3-24 07:48:37 | 显示全部楼层 |阅读模式
如题,给我举个例子,讲下为什么,谢谢大家拉!

回复

使用道具 举报

千问 | 2016-3-24 07:48:37 | 显示全部楼层
c++中的字符型比较特殊 它其实就是一个8位的整形变量 即-2^7~2^7-1范围内的整数和int形的储存方式是一样的它代表ASCII码所以用来表示字符 但实际上仍然是整数 所以可以和int long 等其他整数相互赋值但是int是16位long是32位所以如果你用一给它们都赋100的话可以但如果赋1000的话char型就要出问题了因为超出它的取值范围了所以 实际上字符型只是一个范围比较小的整形你完全可以用它进行整形能进行的所有运算可以和任何整形相互赋值 也可以将一个整形变量按字符格式输出那么就输出它所代表的ASCII码所代表的字符...
回复

使用道具 举报

千问 | 2016-3-24 07:48:37 | 显示全部楼层
互相替换?什么意思呢?你说的是整型与字符变量其中一个通过类型转换或者强制转换赋值给另一个变量,是这个意思嘛?如果是那个意思,那么不能!!因为整型占两个字节16位,而字符占一个字节8位。在整型强制类型转换成字符的时候,是将整型变量的值的低8位截取出来的!是有数据丢失的!...
回复

使用道具 举报

千问 | 2016-3-24 07:48:37 | 显示全部楼层
asas...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行