c++中string里面的size()和length()

二者没有区别

二者没有区别

二者没有区别

返回值都是字符长度,不存在区别,但要注意与size_of这个运算符以及 strlen() 这个函数做对比。

string str="0123456";
cout <<"str.length()="<<str.length()<<endl;                //结果为7
cout <<"str.size()="<<str.size()<<endl;                    //结果为7

strlen(str)str.length()str.size()三者的区别

strlen(str)str.length()str.size()都可以求字符串长度。其中 str.length() 和 str.size() 是用于求string类对象的成员函数,而 strlen(str) 是用于求字符数组的长度,其参数是char*。

strlen(str) 的参数 必须 是字符型指针(char*)。当数组名作为参数传入时,实际上数组就退化成指针了。它的功能是:返回字符串的长度。它从代表该字符串的第一个地址开始遍历,直到遇到结束符’\0’。

返回的长度大小不包括 ‘\0’。

发布了78 篇原创文章 · 获赞 20 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_43657442/article/details/103777213