Menu
Coddy logo textTech

C-style строки. Часть 1

Часть раздела Основы путешествия по C++ на Coddy — урок 67 из 74.

Строки в стиле C создаются с использованием типа char вместо string. Они заканчиваются специальным символом, называемым нулевым символом ('\0').

Этот символ отмечает конец строки. Строки в стиле C часто называют «null-терминированными строками».

Например, простое объявление:

char str1[] = "Hello";

str1 объявляется без указания конкретного размера. Компилятор автоматически определяет размер на основе инициализатора (включая нулевой символ).

Пример явной инициализации символами:

char str2[6] = {'W', 'o', 'r', 'l', 'd', '\0'};

str2 объявлена с размером 6 и явно инициализирована символами, включая нулевой символ в конце.

Пример частичной инициализации:

char str3[10] = "Coddy";

str3 объявлен с размером 10, но инициализированы только первые 6 символов. Остальная часть массива заполнена нулевыми символами.

Для использования строк в стиле C нам необходимо подключить этот заголовочный файл:

#include <cstring>

После подключения мы можем использовать функцию strlen, чтобы получить длину строки в стиле C:

std::cout << strlen(str1); // Вывод: 5
challenge icon

Задание

Легко

Создайте функцию с именем printStringInfo, которая принимает C-строку в качестве входных данных и выполняет следующее:

  1. String:  за которым следует исходная строка.
  2. Length:  за которым следует результат strlen(str).
  3. Character at index 4:  за которым следует символ в этой позиции.
  4. Modified string:  за которым следует строка после изменения первого символа на X.

Шпаргалка

Строки в стиле C создаются с использованием типа char и заканчиваются нулевым символом '\0'. Это строки с завершающим нулем.

Объявление без указания конкретного размера (размер определяет компилятор):

char str1[] = "Hello";

Явная инициализация символами:

char str2[6] = {'W', 'o', 'r', 'l', 'd', '\0'};

Частичная инициализация (оставшаяся часть заполняется нулевыми символами):

char str3[10] = "Coddy";

Чтобы использовать функции для работы со строками в стиле C, подключите:

#include <cstring>

Получение длины строки с помощью strlen():

std::cout << strlen(str1); // Вывод: 5

Попробуйте сами

#include <iostream>
#include <cstring>

void printStringInfo(char str[]) {
    // Вывести строку
    

    // Вывести длину строки
    

    // Вывести символ по индексу 4
    

    // Изменить первый символ на 'X'
    

    // Вывести измененную строку
    
}

int main() {
    char message[] = "Hello, World!";

    printStringInfo(message);

    return 0;
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы