独闷闷网

 找回密码
 立即注册
搜索
查看: 2722|回复: 1
打印 上一主题 下一主题
收起左侧

[原创] 整型int和字符型char相互赋值,不会有问题吗?有什么规律?已解答。

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-22 11:41:44 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 jianhong_wu 于 2014-10-22 13:51 编辑

曹健-江苏:
无符号整型和无符号字符型相互赋值,不会有问题吗?

鸿哥-深圳:
可以相互赋值,但是要掌握规律,否则容易出错。我帮你总结一个规律:
整形int是2个字节,字符型char是1个字节。
(1)当整形int赋值给字符型char时,只是把整形的低位字节数据赋值给了字符型char数据,比如:
unsigned int a=0x1234;
unsigned char b=0x56;
b=a;
那么赋值后b就是0x34.

(2)在c51编译器中,当字符型char赋值给整形int时,把字符型char数据赋值给了整形的低位字节数据,整形的低位字节数据被覆盖了,同时整形的高位字节数据会变成了0。比如:
unsigned int a=0x1234;
unsigned char b=0x56;
a=b;

那么赋值后a就是0x0056;

乐于分享,勇于质疑!
沙发
发表于 2014-10-22 11:54:30 | 只看该作者
受教了
乐于分享,勇于质疑!
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|独闷闷网 ( 粤ICP备12007667号-2 )

GMT+8, 2024-12-2 02:12 , Processed in 0.220636 second(s), 17 queries .

快速回复 返回顶部 返回列表