📜  在C++中遍历字符串的字符(1)

📅  最后修改于: 2023-12-03 15:07:52.611000             🧑  作者: Mango

在C++中遍历字符串的字符

在C++中,字符串被表示为字符数组。遍历字符串意味着遍历字符数组中的每个元素。在本文中,我们将讨论使用不同的方法遍历C++字符串的字符。

方法一:使用for循环遍历字符串的字符

使用for循环是一种最简单和最常见的遍历字符串的字符的方法。以下是一个代码示例:

#include<iostream>
#include<string>
using namespace std;
int main(){
    string s = "Hello World!";
    for (int i = 0; i < s.length(); i++){
       cout << s[i] << endl;
    }
    return 0;
}

在这个例子中,我们使用了for循环来遍历字符串s中的每个字符。每个字符由s[i]表示,并输出到控制台。循环的终止条件是达到字符串的末尾,即s.length()

方法二:使用C++11的范围for循环遍历字符串的字符

C++11还介绍了一种新的循环类型,称为范围for循环。它使得遍历容器类型数据(如字符串和数组)变得更加简便。以下是一个范围for循环遍历字符串的代码样例:

#include<iostream>
#include<string>
using namespace std;
int main(){
    string s = "Hello World!";
    for (char c : s){
        cout << c << endl;
    }
    return 0;
}

在这个例子中,我们使用了范围for循环来遍历字符串s中的每个字符。由于我们使用了一个新变量c,因此在每次迭代中它会被初始化为s中的下一个字符。

方法三:使用C++ STL中的迭代器遍历字符串的字符

除了for循环和范围for循环外,C++ STL还提供了一系列迭代器,这些迭代器可以用于遍历各种容器类型数据。以下是一个使用C++ STL中的迭代器遍历字符串的代码样例:

#include<iostream>
#include<string>
using namespace std;
int main(){
    string s = "Hello World!";
    for (auto it = s.begin(); it != s.end(); ++it){
        cout << *it << endl;
    }
    return 0;
}

迭代器it在每次迭代中指向s中的相应字符,它不仅可以用于遍历字符串,还可以用于遍历其他容器类型数据,如数组和向量。

以上是在C++中遍历字符串的字符的三种最常见的方法。根据具体情况选择适合自己的方法,并根据需要选择相应的循环类型。