2016-08-18 159 views
0

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 < <「非常好。」

第一個詞「你」在哪裏?應該如何查看正確的代碼?

回答

2

cin >> s;在循環讀取行的第一個單詞並將其從輸入流中移除之前。然後getline(cin, s)讀取該行的其餘部分。所以第一次通過循環,s只是are very bad。然後您將bad替換爲good,結果爲are very good

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

相關問題