用另一个字符串替换字符串的一部分(缺少第一个字符串)

Replace part of a string with another string (missing first string)

本文关键字:字符串 第一个 一部分 另一个 替换      更新时间:2023-10-16

cin>> "你很好。"

#include <iostream>
#include <string>
using namespace std;
int main()
{
    string s;
    cin  >> s;
while (getline(cin, s))
{
    while (s.find("bad")!= string::npos)
         {
             s.replace(s.find("bad"), 3, "good");
         }
    cout << s << endl;
}
    return 0;
}

cout & lt; & lt;"非常好。"

第一个单词"You"在哪里?代码应该怎么看才正确?

cin >> s;,然后循环读取该行的第一个单词并将其从输入流中删除。然后getline(cin, s)读取该行的其余部分。所以第一次通过循环,s就是are very bad。然后将bad替换为good,结果是are very good

cin >> s;行似乎没有任何理由,所以只要删除它。