标题:这个字符串是怎么回事?
只看楼主
xfcyjhb
Rank: 1
来 自:重庆
等 级:新手上路
帖 子:116
专家分:0
注 册:2008-2-26
 问题点数:0 回复次数:2 
这个字符串是怎么回事?
#include<stdio.h>
#include<string.h>
int main(void)
{
printf("%d\n",strlen("IBM\n012\1\\"));
printf("%s\n","IBM\n012\1\\");
}
字符串长度为何是9呢?
还有输出的结果为什么是这样
9
IBM
012?\
帮忙解释一下! 谢谢!
搜索更多相关主题的帖子: IBM 字符 include printf void 
2008-04-13 16:10
flyue
Rank: 10Rank: 10Rank: 10
来 自:江南西道
等 级:贵宾
威 望:19
帖 子:3465
专家分:1563
注 册:2006-6-20
得分:0 
"IBM\n012\1\\"是由以下字符组成的:
I
B
M
\n
0
1
2
\1
\\
你数一下是不是9个?
“\1”是输出ASCII码为1的字符,所以是“?”
“\\”表示输出“\”,前面的那个\是转义字符
多看看书吧,书上都讲了,附录里面应该有ASCII码表

天之道,损有余而补不足.人之道则不然,损不足以奉有余.孰能有余以奉天下,唯有道者.
2008-04-13 17:14
xfcyjhb
Rank: 1
来 自:重庆
等 级:新手上路
帖 子:116
专家分:0
注 册:2008-2-26
得分:0 
谢谢!

多C多智慧,将C进行到底.........
2008-04-13 17:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-208800-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.160407 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved