C-style строки. Часть 1
Часть раздела Основы путешествия по C++ на Coddy. Урок 67 из 74.
Строки в стиле C создаются с типом char, а не string. Они заканчиваются специальным символом, который называется нулевым символом ('\0').
Этот символ обозначает конец строки. Строки в стиле C часто называют «строками, завершающимися нулевым символом».
Например, простое объявление:
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Задание
ЛегкоСоздай функцию с именем printStringInfo, которая принимает в качестве входных данных строку в стиле C и выполняет следующие действия:
String:после которой выводится исходная строка.Length:после которой выводится результатstrlen(str).Character at index 4:после которой выводится символ в этой позиции.Modified string:после которой выводится строка после замены первого символа наX.
Попробуйте сами
#include <iostream>
#include <cstring>
void printStringInfo(char str[]) {
// Выведите строку
// Выведите длину строки
// Выведите символ с индексом 4
// Замените первый символ на 'X'
// Выведите изменённую строку
}
int main() {
char message[] = "Hello, World!";
printStringInfo(message);
return 0;
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыОператор остатка от деленияИнкремент и декрементПостфиксный инкремент и декрементСокращенные арифметические операцииОператоры сравненияСравнение строк7Основы ввода-вывода
Оператор coutОператор cinВвод строкПовторение — До 120Повторение — Истина или ложь3Переменные. Часть 2
Объявление типовСоглашения об именованииПовторение: инициализация переменныхПриведение типов. Часть 1Приведение типов. Часть 26Принятие решений
Оператор ifКонструкция if - elseОператор switchУсловный операторПовторение: if - elseВложенный if - else9Циклы
Цикл For, часть 1Цикл WhileЦикл Do WhileBreakContinueЦикл For, часть 2Вложенные циклыБесконечные циклыИтоги — Динамический ввод12Строки
C-style строки. Часть 1C-style строки. Часть 2Операции со строкамиСтроковые функции. Часть 1Строковые функции. Часть 2Потренируйтесь самостоятельно: Онлайн-компилятор C++