Класс string шаблон STL языка C++

Класс string входит в стандартную библиотеку шаблонов в языке C++ предоставляет методы для работы с символами и представляет собой массив символов с поддержкой строк любой длины. Символы из таблицы ASCII, unicode не понимает.

Список наиболее часто используемых функций класса string:

  • operator[] - доступ к конкретным символам в строке для чтения или записи.
  • c_str() - конвертация строки в const char* для использования в функциях, не умеющих работать со string.
  • append - добавление символов к концу строки.
  • operator= - присваивание строке других строк, символьных массивов и даже чисел.
  • insert - вставка символов или других строк в переменную типа string.
  • erase - удаление одного или более символов из заданной строки в заданной позиции.
  • replace - замещение одного или более символов в заданной позиции.
  • length(или size) - возвращение количества символов в строке.
  • empty - определение, есть ли в строке символы.
  • find - нахождение первого вхождения символа или подстроки в данной строке.
  • rfind - аналог find, но осуществляет поиск с конца строки назад.
  • find_first_of - нахождение первого вхождения символов из набора в строке.
  • substr - возвращение подстроки.
  • find_first_not_of - нахождение первого символа в строке, не входящего в заданный набор.
  • compare - сравнение строки (также поддерживаются операторы !=, <, >)

Класс string - является одним из самых используемых классов. Давайте разберем пример работы с ним:

#include <stdio.h>
#include <stdlib.h>
#include <string>
 
using namespace std;
 
void main()
 
{
 
  // Присвоить строку символов объекту типа string
 
  string s = "Hello world";
 
  // Получить первое слово в строке
 
  int nWordEnd = s.find(' ');
 
  string sub_string = s.substr(0,nWordEnd);
 
  // Вывести результаты
 
  printf("String: %s\n", s.c_str());
 
  printf("Sub String: %s\n", sub_string.c_str());
 
}

Комментарии к примеру.

Вы можете прямо присваивать строку символов объекту string. Это упрощает использование строк с данными в программе. Метод find найдет первое вхождение символа в строке. Возвращает метод позицию (начиная с 0) найденного символа, или -1, если подходящего символа в строке не нашлось.

Метод substr возвращает копию части строки, начинающейся с позиции, заданной первым параметром метода, и длиной, заданной во втором параметре метода. Если опустить второй аргумент, то возвратится строка символов начиная с данной позиции до конца исходной строки.

Для вывода строки на экран используется функция printf, выводя строку как символьный массив. Используем метод c_str() для преобразования объекта string в символьный массив.

  • Крупнейшая в Европе школа английского языка

    Промокоды, акции и подарки, чтобы Ваше обучение было не только интересным, но и выгодным. Закажите пробный урок уже сейчас!

    skyeng.ru
  • Английский для IT‑специалистов по Skype

    Персональные занятия по разумным ценам. Длительность курса: 50 уроков по 50 минут. Управляй расписанием занятий через мобильное приложение!

    englex.ru