C语言的一个基础问题:printf("%c,'\41'); 为什么输出的是 "!" ,感叹号?我看到8进制,41代表感叹号

那'\41',里面的'\'是什么意思?... 那'\41',里面的 '\' 是什么意思? 展开
 我来答
oolgloo
推荐于2017-11-24 · TA获得超过2636个赞
知道小有建树答主
回答量:604
采纳率:0%
帮助的人:659万
展开全部
'\'是转义字符,41是ASCII编码号。

所有的ASCII码都可以用“\”加数字(一般是8进制数字)来表示。而C中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符,因为后面的字符,都不是它本来的ASCII字符意思了。

参考资料: http://baike.baidu.com/view/73.html?wtp=tt

不2222222男
2020-05-09
知道答主
回答量:1
采纳率:0%
帮助的人:613
展开全部
'\41'是八进制'\041'的一种写法,转换成10进制是(4*8^1+1*8^0) 33,
‘\41’即 33,33是字符‘!’所对应的ASCII码。所以printf( "%c ", '\41 ')等于printf( "%c ",33),那么最后输出的就是字符 '! ' 。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tidecao2006
2011-04-05 · TA获得超过1228个赞
知道小有建树答主
回答量:842
采纳率:0%
帮助的人:786万
展开全部
printf("%c,'\41');等价于printf("%c,33);也等价于printf("%c,'!');
\表示转义字符,让后面的字符有另外一个意思。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zuoyeduoduo
2011-04-05
知道答主
回答量:36
采纳率:0%
帮助的人:5.5万
展开全部
ascII码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式