C语言printf("\101");输出的为什么是A
7个回答
展开全部
字符的表示方法有三种,
第一种是直接用字符表示就是用引号
char c1 = 'a'; //表示字符a
第二种是用asc2码表示,是整数
char c2 = 97; //也是表示字符a
第三种是用转义字符表示
char c3 = '\141'; //这里的141是八进制数,也就是97,还是字符a
char c4 = '\x61'; //这里的61是十六进制数,也就是97,还是字符a
然而在这里
"\101"由于加了转义字符,表示101是一个八进制数,将其转换成十进制就是65,也就是输出asc2码值为65的字符,也就是字符A
第一种是直接用字符表示就是用引号
char c1 = 'a'; //表示字符a
第二种是用asc2码表示,是整数
char c2 = 97; //也是表示字符a
第三种是用转义字符表示
char c3 = '\141'; //这里的141是八进制数,也就是97,还是字符a
char c4 = '\x61'; //这里的61是十六进制数,也就是97,还是字符a
然而在这里
"\101"由于加了转义字符,表示101是一个八进制数,将其转换成十进制就是65,也就是输出asc2码值为65的字符,也就是字符A
展开全部
\101中的101是八进制的,也就是十进制的65.所以printf("\101");就是输出码值为65的字符,也就是A
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
/101是八进制,变成十进制等于65,A的ASCII码就是65。所以输出A。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
\*** 是八进制,
\0x**是十六进制,
\0x**是十六进制,
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看书后面的附录,有个ASCII码对照表 101对应的是A
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询