永发信息网

main() {char a=65;printf("%c",a);}输出结果是A 把a=65改成a=“65”输出结果是4 为什么呢?

答案:2  悬赏:50  手机版
解决时间 2021-11-11 21:44
  • 提问者网友:锁深秋
  • 2021-11-11 09:43
main() {char a=65;printf("%c",a);}输出结果是A 把a=65改成a=“65”输出结果是4 为什么呢?
最佳答案
  • 五星知识达人网友:举杯邀酒敬孤独
  • 2021-11-11 10:22
在c/c++中“”表示一个字符串,它在内存中的表示方法是 ‘6’,‘5’,‘/0’你把它赋值给了一个整形变量,c++自动把它转化为整形存储,也就是你所说的4.
全部回答
  • 1楼网友:琴狂剑也妄
  • 2021-11-11 11:51
因为你将a定义为字符char型,但是你却将65这个int型的数据复制给他,最后你又以%c来输出一个字符,所以系统出现隐式转换,将65转换成字符,而65对应的ASC编码就是字母A,
char a="65";是不可行的,可能是随机数据
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯