C++ の STL の話。文字列を string に入れて istringstream のコンストラクタに文字列を与えると、そのインスタンスを標準入出力からの入力のようにストリームとして扱えます(というか元からそれが目的か)。 string buf; getline(cin, buf); istringstream iss(buf); while( !iss.eof() ){ string s; iss >> s; cout << s << endl; } 一行に複数の入力があるときはこれがとても便利。でも今までは、上の変数 iss は上のように使用したらそれっきり再利用できず、別の文字列を同様にストリームにしたいときは新しく istringstream 型の変数を用意してました。同じ変数に新しい文字列を与えてまた同じ変数を使いたいと常々思ってたんですが、どうやればいいのかさっぱり分からな