社区
C++ 语言
帖子详情
string 类中的size() 函数与length()有区别吗
flyingdancing2005
2005-06-17 07:35:48
同上
...全文
3574
28
打赏
收藏
string 类中的size() 函数与length()有区别吗
同上
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
28 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
flyingdancing2005
2005-06-25
打赏
举报
回复
谁能给个例子?
jixingzhong
2005-06-20
打赏
举报
回复
学习!!!!
又多了一招!!
naturemickey
2005-06-20
打赏
举报
回复
是一样的。
VC.net 7.0中:
size_type length() const
{ // return length of sequence
return (_Mysize);
}
size_type size() const
{ // return length of sequence
return (_Mysize);
}
GCC 3.3.3中:
size_type
size() const { return _M_rep()->_M_length; }
size_type
length() const { return _M_rep()->_M_length; }
Wolf0403
2005-06-20
打赏
举报
回复
感觉刀子头一句在扯。。。
======下面公布正确答案======
[鲜花、掌声、鞭炮、礼花、彩纸……]
看 SGI 的 STL Programmers' Guide 里面怎么说的:
size_type size() const Container Returns the size of the string.
size_type length() const basic_string Synonym for size().
也就是说,size() 是为了兼容其它 Container 而提供的接口,而 length() 是 basic_string 独有的,为了方便理解而设置的接口,实际就是 size() 的 alias。
http://www.sgi.com/tech/stl/basic_string.html
xjp6688
2005-06-20
打赏
举报
回复
不一样
Olive_Eagle
2005-06-19
打赏
举报
回复
又多了一点见识!!
C_er
2005-06-19
打赏
举报
回复
俺也不懂
snowred_bai
2005-06-19
打赏
举报
回复
顶~~
长了点见识!
021850524
2005-06-19
打赏
举报
回复
至少.size()是要返回容器的大小.这个是STL规定的所有容器必须要有的方法.
慢慢来还不行么
2005-06-19
打赏
举报
回复
mark
OpenHero
2005-06-19
打赏
举报
回复
解释得好
csucdl
2005-06-19
打赏
举报
回复
string.size() = string.lenth() * sizeof(string.item)
whatsouta
2005-06-19
打赏
举报
回复
SO SO
heguosheng
2005-06-19
打赏
举报
回复
标记
ikiki
2005-06-18
打赏
举报
回复
size() 应该是函数模版的吧,string 类中为了更清晰的表达意义就加了一个 length()
sunman1982
2005-06-18
打赏
举报
回复
回复人: beepbug(放屁虫) ( ) 信誉:100 2005-06-18 16:12:00 得分: 0
不一样。看你用的是单字节字符,还是多字节字符。
=========================
他们的内部实现是一样的,使用的结果也是一样的。
你说不一样,能举个例子么?
foochow
2005-06-18
打赏
举报
回复
都是表示字符串中的元素数,等于begin()到end()之间的距离.
length()是考虑到传统C函数strlen而对应设置的,而size()是考虑到string作为一个STL容器,应该具有的common member.
BluntBlade
2005-06-18
打赏
举报
回复
Size是字节数
Length是字符数……
还有一点,提供Size应该是为了提供容器兼容接口。
beepbug
2005-06-18
打赏
举报
回复
不一样。看你用的是单字节字符,还是多字节字符。
oyljerry
2005-06-18
打赏
举报
回复
为了统一其他模板中的size,length便于理解
加载更多回复(8)
Java中的
String
主要讲解
String
类型的不可变性,里面的方法,==等
string
类中
的
size
()
函数
和
length
()
函数
的
区别
?
string
类中
的
size
()
函数
和
length
()
函数
的
区别
? 唯一
区别
:身份
区别
length
()代替传统的C字符串,所以针对C中的strlen,给出相应的
函数
length
()。另一个身份是可以用作STL容器,所以按照STL容器的惯例给出
size
()。 C++中
string
成员
函数
length
()等同于
size
(),功能没有
区别
。 C++标准库中的
string
中两者的源代码如下:
size
_t...
C++中
string
的
size
与
length
的
区别
在C++的
string
类中
,有两种
函数
:
length
和
size
。他们的作用都是返回字符串的长度 那么,问题来了,他们两者有什么
区别
? 为了钻研,我们要先找到他们两者的源代码 让我们先找到
length
的源代码 首先,我们随便定义一个字符串,并调用
length
#include <iostream> #include <
string
> using namespace std; int main(){
string
s; s.
length
(); return 0; } 然后,重点来
C++:
string
类中
size
()和
length
()的
区别
C++:
string
类中
size
()和
length
()的
区别
C++
string
成员
函数
length
()
size
() 和 C strlen() 的
区别
C++
string
成员
函数
length
()等同于
size
(),但是和 C 库
函数
strlen()有着本质
区别
,使用时切勿混淆。
C++ 语言
64,678
社区成员
250,490
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章