Строки

В C++ работа со строками осуществляется с помощью символьных массивов. Для этого строку представляют конечным набором символов, с которым можно работать при помощи массива типа char.

Простейший пример выглядит так

Создался нефиксированный массив символов, который получил 3 элемента. Вызвать можно любой из этих символов, указав его номер.

Существует множество функций для работы с таким представлением строк.

Для примера возьмем часть кода.

Первые две строки ушли на создание строк. Третья строка вычисляет длину s с помощью функции strlen. Функция strcpy выполняет копирование строки s2 в s, при этом идет полная замена предыдущих символов. Функции strcat не копирует, а объединяет строки, результат объединения сохраняется в первую строку, в данном случае в s.

Расширения для предыдущих функций strncpy и strncat добавляют параметр, указывающий с каким количеством символов из второй строки будет работать функция. Последняя strcmp сравнивает 2 строки, выводя 0, если они равны, и +1 или -1 если одна из строк больше. Строки рассматриваются посимвольно, и результат рассчитывается по числовому коду первых неодинаковых символов.

Следует отметить, что функции strcpy, strncpy, strcat, strncat не следят за выделением памяти, так что память нужно выделять с помощью других команд. В данном примере в самом начале для каждой строки зарезервировано место под хранение 100 символов.

Не нашли ответ? Не беда, спросите в комментариях.

Ваш e-mail не будет опубликован. Обязательные поля помечены *