C++ string 长度怎么获取?

文章导读
Previous Quiz Next 字符串的长度是指字符串中存在的字符数量。这些字符可以是 char 数据类型,包括所有字母数字元素、符号和杂项字符。在 C++ 编程语言中,有两种类型的字符串:C 风格的字符数组,以及 String objects,后者是 <str
📋 目录
  1. 使用 strlen() 方法计算字符串长度
  2. 使用 string::size() 方法计算字符串长度
  3. 使用 string::length() 方法计算字符串长度
  4. 使用 while 循环计算字符串长度
  5. 使用 for 循环计算字符串长度
A A

C++ 字符串长度



Previous
Quiz
Next

字符串的长度是指字符串中存在的字符数量。这些字符可以是 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 classstring::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