c++程序将数字转化为字符串,在将每个数字放入数组的时候为什么要+'0' 是因为只有这样才能将数字

c++程序将数字转化为字符串,在将每个数字放入数组的时候为什么要+'0'是因为只有这样才能将数字转化为字符?还是因为字符串是以空字符结尾才需要加?如果是因为字符串以空字符... c++程序将数字转化为字符串,在将每个数字放入数组的时候为什么要+'0' 是因为只有这样才能将数字转化为字符?还是因为字符串是以空字符结尾才需要加?如果是因为字符串以空字符结尾才加的那这样做不是让每一个字符都有了一个空字符吗? 展开
 我来答
xuxingjishi
2016-10-12 · TA获得超过347个赞
知道答主
回答量:46
采纳率:0%
帮助的人:26.3万
展开全部
'0'是ASCII字符0的意思,也可写作48或十六进制0x30,所谓将数字转化为字符,就是将数字转化为数字对应的ASCII字符,比如数字1,它的ascii字符'1'的值是49,等于48+1也可写作'0'+1或者0x30+1效果是一样的,同理其他数字也是这样。因此使用'0'+数字 的意思就是将该数字转化为对应的ascii值
暗影琉璃e6b9a
2016-10-12 · 超过47用户采纳过TA的回答
知道小有建树答主
回答量:128
采纳率:0%
帮助的人:94.3万
展开全部
char 相加,并不是单纯的'a'+'b' = 'ab',而是'a'的ASCII码加上'b'的ASCII,所以'a'+'b'=195,对应的字符是'Ã',楼主这里是把字符串转成数字,而数字0的字符就是'0',ASCII码是48,num%10是得到高位的数字,得到数字后再从48开始加上这个数字,就是得到的对应到数字的ascii码,这个ascii才是要显示出来的字符。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
charleszhangji
推荐于2018-03-22 · TA获得超过4555个赞
知道小有建树答主
回答量:887
采纳率:0%
帮助的人:965万
展开全部
数字字符0 - 9 对应的ASCII值是 48 ~ 57
temp[i] = num%10 + '0' 其实等价于
temp[i] = num%10 + 48
这样就实现了一个整数转化为字符的效果
即一个整数(例如 3)加上48以后,就得到了整数对应的字符的ascii值(51恰好是字符'3')
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式