C++ 如何计算某个字符/替换的字符 。。。 v、 推回; } 对于(int i=0;i

C++ 如何计算某个字符/替换的字符 。。。 v、 推回; } 对于(int i=0;i,c++,C++,如果您需要它来输出替换计数,那么最直接的方法就是引入一个专用的计数器变量,并在每次替换时递增它: ... v.push_back(s); } for (int i =0; i < v.size(); ++i) { int a_pos = -1; a_pos = v[i].find('a'); if (a_pos != -1) v[i][a_pos] = '@'; } cout<< v.size() << " "; 欢迎我建议你们看一下标准

如果您需要它来输出替换计数,那么最直接的方法就是引入一个专用的
计数器
变量,并在每次替换时递增它:

...
v.push_back(s);
}

for (int i =0; i < v.size(); ++i)
{
int a_pos = -1;
a_pos = v[i].find('a');
if (a_pos != -1)
v[i][a_pos] = '@';

}

cout<< v.size() << " ";

欢迎我建议你们看一下标准的库算法。你们需要用替换的a来计算单词数吗?是的,我知道我的v.size需要替换,但我不知道用什么,我已经尝试了代码中的其他输入,甚至如果语句试图通过,但没有用,谢谢!我试图通过使用count++的这种方式来完成它,但无法让它实现work@user16101600然后,我希望您能从思考您的
计数器
版本与此版本之间的差异中获益。如果答案是你想要的,别忘了接受。
#include <iostream>
#include <vector>
#include <string>

using namespace std;

int main()
{
    vector<string> v;
    string s; 
    int numOfStrings;
    cin>>numOfStrings;
    unsigned counter = 0; // Our counter

    for (int i =0; i < numOfStrings; ++i) {
        cin>>s;
        v.push_back(s);
    }

    for (int i =0; i < v.size(); ++i) {
        int a_pos = -1;
        a_pos = v[i].find('a');
        if (a_pos != -1) {
            v[i][a_pos] = '@';
            ++counter; // Done a replacement, increment the counter
        }
    }

    cout << "Counter: " << counter << endl; // Print the count of replacements

    for (auto elem : v) { // Print all the elements in our vector of strings
        cout<< elem <<" ";}
    
Input: 
2 bar foo
    
Output: 
Counter: 1
b@r foo