C语言字符串长度的问题

"s\n\016"长度为3,为什么"s\n\0166"为4,WHY?... "s\n\016"长度为3,为什么
"s\n\0166"为4,WHY?
展开
 我来答
Tom1987
推荐于2016-06-29 · TA获得超过1311个赞
知道小有建树答主
回答量:325
采纳率:0%
帮助的人:321万
展开全部
你肯定是用strlen来测的,它是只针对有效字符串,也就是遇\0而止,\0并不算在其中。若是sizeof测的,就是所有的字符长度之和,包括\0。另外,若所给的字符串里的相邻字符能够成转义字符时,以转义字符为先,而不是屏幕上所显示的单个字符了。所谓转义字符,即由\后面紧接八进制(当能够成三位或者两位的合法八进制数),或者十六进制(特点是有个x开头)时,它所代表的是这个数对应的ASC码代表的字符。所以\016是一个整体的转义字符优先,而不能是组成\0。
L_o_o_n_i_e
2008-04-03 · TA获得超过4.2万个赞
知道大有可为答主
回答量:8507
采纳率:38%
帮助的人:5231万
展开全部
s 1个字母
\n 1个新行符号
\016 1位8进制数
总的 3 个

s 1个字母
\n 1个新行符号
\016 1位8进制数
6 1个数字
总的 4个
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式