Строение строковых классов. Функции ввода-вывода

   
На этом шаге мы перечислим функции ввода-вывода.

   
Для выполнения указанных действий можно воспользоваться следующими методами:

  ostream& operator<< (ostream& strm, const string& str)

Записывает символы str в поток strm.

   
Если выполняется условие strm.width()>0, в поток данных выводятся не менее width() символов, а ширина поля в потоке данных обнуляется.

   
Параметр ostream - выходной поток типа basic_ostream<char>, где char - тип символов.

  istream& operator>> (istream& strm, string& str)

Читает символы следующего слова из потока данных strm в строку str.

   
Если для strm установлен флаг skipws, начальные пропуски игнорируются.

   
Чтение производится до выполнения одного из следующих условий:

  • strm.wdth() больше 0, и из потока данных прочитаны width() символов;
  • strm.good() возвращает false (что может привести к выдаче соответствующего исключения);
  • isspace(c,strm.getloc()) возвращает true для следующего символа с;
  • str.max_size() символов сохраняется.

   
Параметр istream - входной поток данных типа basic_istream<char>, где char - тип символов.

  istream& getline (istream& strm, string& str)
  istream& getline (istream& strm, string& str, char delim)

Читает символы следующей логической строки из потока strm в строку str.

   
Читаются все символы (включая начальные пропуски) до выполнения одного из следующих условий:

  • strm-good() возвращает false (что может привести к выдаче соответствующего исключения);
  • из потока данных читается delim или strm.widen('\n');
  • str.max_size() символов сохраняется.

   
Разделитель строк извлекается из потока данных, но не присоединяется к str.

   
Внутренняя память перераспределяется по мере необходимости.

   
Параметр istream - входной поток данных типа basic_istream<char>, где char - тип символов.

   
На следующем шаге мы рассмотрим получение итераторов.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий