2017-12-27 23 views
-1

ユーザーからの入力を取得して別の文字列と連結するコードを作成しようとしましたが、うまくいきません。C++でのユーザー入力との文字列連結

this is how it works 

予想される出力:コードは

#include<iostream> 
using namespace std; 
int main() { 
    string s1="Hi "; 
    string s2; 
    cin>>s2; 
    s1=s1+s2 
    cout<<s1; 
    return 0; 
} 

入力、下記ダウンしている

Hi this is how it works 

しかし、私は期待どおりに動作しませんでした。出力は

Hi this 

誰でも助けてくれますか?

+2

['std :: getline'](http://en.cppreference.com/w/cpp/string/basic_string/getline)について知りたいことがあります。 '>> '演算子は、スペースで区切られた*文字列を読み込みます。 –

+0

ありがとうございました、@Someprogrammerdude。今私はそれを訂正した。 –

答えて

0

「>>」はスペースで区切られた文字列を読み取ります。 今、私はgetlineが行を読むのに使われていることを発見しました。

#include<iostream> 
using namespace std; 
int main() { 
    string s1="Hi "; 
    string s2; 
    getline(cin,s2); 
    s1=s1+s2; 
    cout<<s1; 
    return 0; 
} 

これで目的の出力が得られました。

0
#include <iostream> 
using namespace std; 

int main() 
{ 
    string s1="hi "; 
    string s2; 

    cout << "Enter string s2: "; 
    getline (cin,s2); 


    s1 = s1 + s2; 

    cout << "concating both "<< s1; 

    return 0; 
} 

ここにこれを使用してください!これは助けになるはずです!