二者沒有區別
二者沒有區別
二者沒有區別
返回值都是字符長度,不存在區別,但要注意與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'。
