c语言中1+'A'+2.3为什么等于68.3

[复制链接]
查看11 | 回复4 | 2013-4-7 12:37:29 | 显示全部楼层 |阅读模式
当遇到不同类型的数据参与运算时,编译器会自动将其转换为相同类型后再进行运算,也叫隐式类型转换,按从低到高的顺序进行,字符—>整型->无符号整型->长整型->无符号长整型->双精度浮点型,所以'A'为符号,先转换为整型为65(ASCII码),再运算.因而得68.3。...
回复

使用道具 举报

千问 | 2013-4-7 12:37:29 | 显示全部楼层
‘A'的ASCII码是65.所以加起来就是68.3...
回复

使用道具 举报

千问 | 2013-4-7 12:37:29 | 显示全部楼层
楼上回答的正确~...
回复

使用道具 举报

千问 | 2013-4-7 12:37:29 | 显示全部楼层
'A'代表char类型的A,加法运算时,会自动转换为int,即它的ASCII码:65,所以结果是1+65+2.3...
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行