gpt4 book ai didi

c++ - 在 C++ 中循环遍历字符串 vector 的字符串元素中的所有字符

转载 作者:行者123 更新时间:2023-11-28 01:52:52 26 4
gpt4 key购买 nike

比如说,我有一个 vector 。该 vector 包含 i 项。假设我想遍历 vector 的每个元素 i 中的所有位置 j。我尝试使用嵌套的 for 循环来执行以下代码中的过程。它尝试将每个元素更改为所有 ks,如下所示:

vector<string> strvec;
strvec.push_back("Dog");
strvec.push_back("Cat");

for (int i = 0; i < strvec.length; i++)
{
for (int j = 0; j < strvec[i].length; j++)
{
strvec[i][j] = 'k';
}
}

只要以这种方式使用循环,上述代码就会收到错误消息,甚至在嵌套循环中的代码之前(从嵌套循环的开头开始)。有没有一种方法可以循环遍历字符串 vector 的每个元素中的每个字符,并且有效且可行?

最佳答案

这是一种使用引用和基于范围的 for 的方法。任何时候你必须从头开始迭代一个容器,首先尝试基于范围的for。它不像手动控制那样用途广泛,但它真的很难出错。

for (string & str: strvec)
{
for (char & ch: str)
{
ch = 'k';
}
}

关于c++ - 在 C++ 中循环遍历字符串 vector 的字符串元素中的所有字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42287329/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com