Строка — это группа символов, обрабатываемая как единый модуль. Строка может включать буквы, цифры и разнообразные специальные символы, такие как +, -, *, /, $ и другие. Строковые константы или литеральные записываются в C++ в двойных кавычках.
Строка в C++ — это массив символов, заканчивающийся нулевым символом (‘\0’). Строка доступна через указатель на первый символ в строке. Значением строки является адрес ее первого символа.
Примеры объявлений строк:
char str[]=”Моя строка”; //массив из 11-ти элементов
char *str_ptr=”Моя строка”; //указатель на массив
Особенности ввода/вывода строк
-
Строку можно присвоить массиву, используя операцию cin — взять из потока. Из потока считываются символы пока не встретится пробел, символ табуляции, символ новой строки или указатель конца файла.
Например:
char word[5];
cin>>word;
При этом длина вводимой строки не может быть более 4 символов, чтобы оставить место для завершающего нулевого символа.
-
Для ввода строк, состоящих из нескольких слов, в одну строковую переменную, используют методы getlineилиgetклассаistream.
cin.getline(char *_Str ,int _Count, char _Delim);
где: _Count – количество считываемых символов.
_Delim – символ разделитель, останавливающий ввод, если он встретится до того как будет введено _Count-1 символов. По умолчанию он равен ‘\n’. Символ разделитель удаляется.
_Str – строка, в которую записываются считываемые символы.
Например:
char str[10];
cin.getline(str,10);
Метод get работает аналогично, но оставляет в строке символ разделитель.