Пространства имён
Варианты
Действия

String Stream Constructors

Материал из cppreference.com

Синтаксис:

    #include <sstream>
    stringstream();
    explicit stringstream( ios_base::openmode mode );
    stringstream( const string& s, ios_base::openmode mode );
    ostringstream();
    explicit ostringstream( ios_base::openmode mode );
    ostringstream( const string& s, ios_base::openmode mode );
    istringstream();
    explicit istringstream( ios_base::openmode mode );
    istringstream( const string& s, ios_base::openmode mode );

Объекты stringstream, ostringstream, и istringstream используются для ввода и вывода информации в строку. Они аналогинчы объектам fstream, ofstream и ifstream.

Опциональный параметр mode определяет, как открыть файл, в соответствии с флагами потоков ввода/вывода.

Объект ostringstream можно использовать для записи данных в строку. Эта операция аналогична функции c/io/sprintf стандартной библиотеки С.

Например:

    ostringstream s1;
    int i = 22;
    s1 << "Hello " << i << endl;
    string s2 = s1.str();
    cout << s2;

Объект istringstream можно использовать для чтения данных из строки. Эта операция аналогична функции c/io/sscanf стандартной библиотеки С.

Например:

    istringstream stream1;
    string string1 = "25";
    stream1.str(string1);
    int i;
    stream1 >> i;
    cout << i << endl;  // displays 25

Вы можете также определить строку для ввода в конструкторе istringstream, как в следующем примере:

    string string1 = "25";
    istringstream stream1(string1);
    int i;
    stream1 >> i;
    cout << i << endl;  // displays 25

Объект stringstream может быть также использован и для ввода и для вывода строки, как объект fstream.

Смотрите также: C++ I/O streams