Инструменты пользователя

Инструменты сайта


klass_string

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

klass_string [2011/02/03 14:07] (текущий)
Строка 1: Строка 1:
 +====== Класс string ======
 +Класс предоставляет методы для работы с символами и представляет собой массив символов с поддержкой строк любой длины. Символы из таблицы [[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 - является одним из самых используемых классов. Давайте разберем пример работы с ним: ​
 +<​file>​
 +#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());​
 +
 +}
 +</​file>​
 +
 +Комментарии к примеру.
 +Вы можете прямо присваивать строку символов объекту string. Это упрощает использование строк с данными в программе. ​
 +Метод find найдет первое вхождение символа в строке. Возвращает метод позицию (начиная с 0) найденного символа,​ или -1, если подходящего символа в строке не нашлось. ​
 +Метод substr возвращает копию части строки,​ начинающейся с позиции,​ заданной первым параметром метода,​ и длиной,​ заданной во втором параметре метода. Если опустить второй аргумент,​ то возвратится строка символов начиная с данной позиции до конца исходной строки. ​
 +Для вывода строки на экран используется функция printf, выводя строку как символьный массив. Используем метод c_str() для преобразования объекта string в символьный массив.
загрузка...
klass_string.txt · Последние изменения: 2011/02/03 14:07 (внешнее изменение)