文字列を空白区切り文字で分割できないようです。
getline(cin, myString) を使ってみました。
文字列を「10 20 30」として入力すると、文字列を出力ストリームに出力すると、「20 30」が得られますが、10 は得られません。
while(cin >> string) も試してみました。ここでは機能しますが、while ループは決して終了しません。
どんな助けでも大歓迎です。
文字列を空白区切り文字で分割できないようです。
getline(cin, myString) を使ってみました。
文字列を「10 20 30」として入力すると、文字列を出力ストリームに出力すると、「20 30」が得られますが、10 は得られません。
while(cin >> string) も試してみました。ここでは機能しますが、while ループは決して終了しません。
どんな助けでも大歓迎です。
使用できますistringstream
:
string str;
getline(cin, str);
istringstream ss(str);
for(string word; ss >> word; )
cout << word << endl;
次の場合を除き、停止しませwhile(cin >> str);
ん。
>>
あなたの場合は難しい何かが失敗します。
EOF が発生します ( Ctrl+ Z、Ctrl+Dを使用できF6ます。システムによって異なります)
ユーザー定義の条件:if(str.find('\n')) break;