C++ 字符串长度
字符串的长度是指字符串中存在的字符数量。这些字符可以是 char 数据类型,包括所有字母数字元素、符号和杂项字符。在 C++ 编程语言中,有两种类型的字符串:C 风格的字符数组,以及 String objects,后者是 <string> class 的内置对象。
字符串的长度还包括空白字符,但如果字符串包含终止字符 "\0",则字符串在此字符处结束,长度计数在此字符之前终止。
有多种方法可以找到给定字符串的长度。其中一些方法是迭代的,而另一些则使用内置函数和方法。这些方法在本章的后续部分中将得到清晰的解释:
- 使用 strlen() 方法
- 使用 String Class 的 string::length() 方法
- 使用 String Class 的 string::size() 方法
- 使用迭代的 for Loop
- 使用迭代的 while Loop
使用 strlen() 方法计算字符串长度
字符串被定义为字符数组,通过指向数组第一个迭代器的指针来访问。我们可以使用 C 库的 strlen() 方法来计算 C 类型数组的长度。
语法
以下语法展示了如何使用 strlen() 方法来计算字符串的长度:
strlen(string_name);
示例
以下示例展示了如何使用 strlen() 方法计算字符串的长度:
#include <bits/stdc++.h>
using namespace std;
int main() {
char s[]="I love TP !!!";
cout<<"Length of string s : "<<strlen(s);
return 0;
}
输出
Length of string s : 13
使用 string::size() 方法计算字符串长度
大多数程序员在需要计算 C++ 编程语言中字符串长度时,通常使用 string class 的 string::size() 方法。这是最高级的方法,通常在遍历 string object 时使用。
语法
以下语法展示了如何使用 size() 方法来计算字符串的长度:
string_object.size();
示例
以下示例展示了如何使用 size() 方法计算字符串的长度:
#include <bits/stdc++.h>
using namespace std;
int main() {
string s="I love TP !!!\0 and others";
cout<<"Length of string s : "<<s.size();
return 0;
}
输出
Length of string s : 13
使用 string::length() 方法计算字符串长度
我们也可以使用 string class 的 length() 方法来确定给定字符串的长度。length() 和 size() 方法都是 <string> 头文件的一部分,它们作为 string object 的方法被调用。
语法
以下语法展示了如何使用 length() 方法来计算字符串的长度:
string_object.length();
示例
以下示例展示了如何使用 length() 方法计算字符串的长度:
#include <bits/stdc++.h>
using namespace std;
int main() {
string s="I love TP !!!\0 and others";
cout<<"Length of string s : "<<s.length();
return 0;
}
输出
Length of string s : 13
使用 while 循环计算字符串长度
我们可以使用简单的 while 循环 遍历字符串,并初始化一个变量 count 来计算字符串的长度,直到到达字符串末尾。对于每次迭代,count 增加 1,因此最终结果将是字符串的长度。
语法
以下语法展示了如何使用 while 循环计算字符串的长度 −
while(s[i]!='\0') {
[body]
}
示例
以下示例展示了如何使用单个 while 循环计算字符串的长度 −
#include <bits/stdc++.h>
using namespace std;
int main() {
string s="I love TP !!!\0 and others";
int count=0, i=0;
while(s[i]!='\0')
count++, i++;
cout<<"Length of string s : "<<count;
return 0;
}
输出
Length of string s : 13
使用 for 循环计算字符串长度
我们可以使用简单的 for 循环 遍历字符串,并初始化一个变量 count 来计算字符串的长度,直到到达字符串末尾。对于每次迭代,count 增加 1,因此最终结果将是字符串的长度。
语法
以下语法展示了如何使用 for 循环计算字符串的长度 −
for(int i=0;s[i]!='\0';i++){
[body]
}
示例
以下示例展示了如何使用单个 for 循环计算字符串的长度 −
#include <bits/stdc++.h>
using namespace std;
int main() {
string s="I love TP !!!\0 and others";
int count=0;
for(int i=0;s[i]!='\0';i++)
count++;
cout<<"Length of string s : "<<count;
return 0;
}
输出
Length of string s : 13