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'。