| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 808 人关注过本帖
标题:strlen 与 sizeof
只看楼主 加入收藏
zfzdhz
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2008-8-21
收藏
 问题点数:0 回复次数:8 
strlen 与 sizeof
strlen 与 sizeof 有何区别啊???
搜索更多相关主题的帖子: sizeof strlen 
2008-09-04 14:40
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
两者完全没有关系。

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-09-04 14:55
blackkey
Rank: 1
等 级:新手上路
帖 子:159
专家分:0
注 册:2005-6-8
收藏
得分:0 
strlen  -> 是求一个字符串的长度 ;

sizeof -> 是求一个变量所占内存的大小 ;


和楼上说的一下 完全不是一个感念

2008-09-04 15:13
p1s
Rank: 4
等 级:贵宾
威 望:10
帖 子:454
专家分:3
注 册:2005-11-4
收藏
得分:0 
sizeof也可以求出一个数组所占的空间
比如char a[10]="Hello";这时候sizeof求出来的数值为10,而不是字符串长度
如果用strlen求出来的则是字符串的长度,以字符串的结尾符作为结尾
2008-09-04 16:35
pdcboy
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-3-21
收藏
得分:0 
[bo][un]p1s[/un] 在 2008-9-4 16:35 的发言:[/bo]

sizeof也可以求出一个数组所占的空间
比如char a[10]="Hello";这时候sizeof求出来的数值为10,而不是字符串长度
如果用strlen求出来的则是字符串的长度,以字符串的结尾符作为结尾


个人感觉
char a[10]="Hello";这时候sizeof求出来的数值不是5么,怎是4?望赐教,谢谢
2008-09-04 22:33
pdcboy
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-3-21
收藏
得分:0 
怎是10?
2008-09-04 22:33
awnucel
Rank: 1
等 级:新手上路
威 望:1
帖 子:68
专家分:0
注 册:2006-12-13
收藏
得分:0 
char a[10]="Hello";
因为在声明一个数组的时候,我们已经在内存中为他开辟了10个字节的空间,无论你是否使用,这10个字节都属于a这个数组,所以用sizeof求内存占用的时候,自然就是10
而strlen 是求字符串长度的,不包含\0在内,因为Hello 一共有5个字符,每个字符占用1个字节,所以strlen的结果就是5
2008-09-05 04:21
pdcboy
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2008-3-21
收藏
得分:0 
哦,知道了,谢谢!
2008-09-06 00:03
快速回复:strlen 与 sizeof
数据加载中...
 
   



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

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