| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1184 人关注过本帖
标题:傻瓜问题:到底是我傻还是答案傻?
只看楼主 加入收藏
黑白格子布
Rank: 1
等 级:新手上路
威 望:1
帖 子:67
专家分:0
注 册:2005-12-11
收藏
 问题点数:0 回复次数:13 
傻瓜问题:到底是我傻还是答案傻?
"\ta\017bc"

这个破字符串到底有几个字符?不是5个???答案是6
\017不是一个字符吗??\加1到3个八进制数字代表一个ASC码嘛~~~
搜索更多相关主题的帖子: 傻瓜 
2005-12-17 18:56
303770957
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:6
帖 子:838
专家分:2125
注 册:2005-9-10
收藏
得分:0 

是5我上机运行了:
#include "stdio.h"
#include "string.h"
void main()
{
char str[20]="\ta\017bc";
int a=strlen(str);
printf("%d\n",a);
}
结果是:5


♂ 死后定当长眠,生前何须久睡。♀
2005-12-17 19:24
黑白格子布
Rank: 1
等 级:新手上路
威 望:1
帖 子:67
专家分:0
注 册:2005-12-11
收藏
得分:0 

谢谢~~~~~~~~~


2005-12-17 20:08
fantasyop
Rank: 1
等 级:新手上路
帖 子:71
专家分:0
注 册:2005-2-25
收藏
得分:0 
是书上说6个 还是编译器上说6个!!
what is '\0 ' ?

今年俺是大菜鸟,明年俺希望是小菜鸟,......
2005-12-17 22:02
猪也聪明
Rank: 1
等 级:新手上路
帖 子:156
专家分:0
注 册:2005-5-16
收藏
得分:0 
NULL

虽然我没有翅膀,可是我希望飞的高点
2005-12-17 23:07
spp509
Rank: 1
等 级:新手上路
威 望:1
帖 子:98
专家分:0
注 册:2005-11-23
收藏
得分:0 

不明白


一听就懂,一看就会,一做就错……
2005-12-18 22:22
黑白格子布
Rank: 1
等 级:新手上路
威 望:1
帖 子:67
专家分:0
注 册:2005-12-11
收藏
得分:0 
以下是引用fantasyop在2005-12-17 22:02:00的发言:
是书上说6个 还是编译器上说6个!!
what is '\0 ' ?

书上说的,我这里没办法上机运行,所以有时候比较郁闷.呵呵\017是一个字符,\带一到三个八进制数表示一个ASC码


2005-12-22 21:35
feverxx
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2005-12-20
收藏
得分:0 
用strlen(str)命令时不含‘\0',可换成sizeof(str),字符串最后要有一个默认的'\0'作为结束。
2005-12-23 09:32
zhaopei
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-12-23
收藏
得分:0 
sizeof 是实际分配的内寸空间,sizeof(str[20])等于20,strlen是实际字符串的长度,并不包含结束符,所以实际是占6个字节的.
2005-12-23 09:54
jupiter_201
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2005-12-21
收藏
得分:0 
答案是:6
#include "stdio.h"
#include "string.h"
void main()
{
char str[20]="\ta\017bc";
int a=strlen(str);
int b=sizeof(str);
printf("%d\n",a);
printf("%d\n",b);
}
运行结果:
5
2
因为strlen(str)不记入'\0'这个字节,'\t','a','\017','b','c','\0';
sizeof(str)只计算'\0'之前的字符,不计入'\0',所以'\t','a',两个.
2005-12-23 10:47
快速回复:傻瓜问题:到底是我傻还是答案傻?
数据加载中...
 
   



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

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