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

 我来答
百度网友a72739b
2011-11-27 · TA获得超过146个赞
知道小有建树答主
回答量:190
采纳率:0%
帮助的人:173万
展开全部
因为你将a定义为字符char型,但是你却将65这个int型的数据复制给他,最后你又以%c来输出一个字符,所以系统出现隐式转换,将65转换成字符,而65对应的ASC编码就是字母A,
char a="65";是不可行的,可能是随机数据
康小神
推荐于2016-09-16 · 超过52用户采纳过TA的回答
知道小有建树答主
回答量:87
采纳率:0%
帮助的人:50.6万
展开全部
在c/c++中“”表示一个字符串,它在内存中的表示方法是 ‘6’,‘5’,‘/0’你把它赋值给了一个整形变量,c++自动把它转化为整形存储,也就是你所说的4.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式