在C++中遍历字符串

Traversing a string in C++

本文关键字:字符串 遍历 C++      更新时间:2023-10-16

我正在寻找类似于在Python中遍历字符串的东西:

for char in str:
    do something

我如何在C++中做到这一点?

感谢

如果strstd::string,或者是char的其他标准容器,那么它就是

for (char c : str) {
    // do something
}

如果要修改字符串的字符,则需要引用char & c,而不是值char c

使用std::字符串会很容易:

std::string myStr = "Hello";
for (char c : myStr)
    std::cout << c; // Print out every character

或者如果你想修改它,可以参考。

std::string myStr = "Hello";
for (char& c : myStr)
    c = 'A';
// mystr = "AAAAA"

使用基于范围的循环,如

char a1[5] = {'a', 'a', 'a', 'c'};
for (auto a : a1)
    cout << a << endl;