char类型与int类型数值为什么能计算

char类型与int类型数值为什么能计算

http://img1.sycdn.imooc.com//climg/5cdfa55b0001e41503590305.jpg

真的是让人很费解啊,char类型的变量ch它可是单字符,为什么能和int类型的数值进行加法计算?

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学的理解是对的哦!char类型的值存在ASCII码值表,在一些场景下是可以使用加法的哦!

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

好帮手慕小班 2019-05-18 16:16:05

同学你好,这里并不是直接让char与int进行运算,而是在计算机的底层使用的是ASCII码值进行的加法运算,例如:

http://img1.sycdn.imooc.com//climg/5cdfbe660001ac3d09610329.jpg

ASCII中0到9的对应码值

http://img1.sycdn.imooc.com//climg/5cdfbdbd0001150e02550354.jpg

所以题目中ch+1是获取了ASCII码对应的字符是一致的,所以题目就好像是char类型直接进行了加法运算!

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~


  • 提问者 鱼儿0001 #1
    好神奇。老师,我梳理一下这个计算过程:ch+1时,ch转成阿斯科马值56,56是数值,56+1=57,找到对应57的字符是'9',然后输出。就是说,先转成int类型相加,再转成字符?
    2019-05-18 16:27:43
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师