Краткое содержание:
- Строки формата C
- Строки формата C++
- Операции со строками
- Рекомендации
Строки формата C
Строка любого формата представляет собой массив символов. Язык C++ оказывает полную поддержку строк, созданных в стиле своего предка - языка C. В нем строка выступает в качестве массива типа char, в конце содержит нуль-символ '\0'. Являются довольно неудобными в практическом использовании, в следствии чего утратили актуальность в современном C++.
Строки формата C++
Для облегчения работы со строками был добавлен заголовочный файл <string>, входящий в STL. Как и все элементы стандартной библиотеки, находится в пространстве имен std.
Строка задается как последовательность символов, заключенная в кавычки (строковый литерал).
Операции со строками
По умолчанию в C++ можно производить сложение двух строк, получая новую строку, а также обрабатывать их с помощью потоков ввода/вывода. В следующем примере программа получает строку из потока ввода, а на вывод подаёт слитое с этой строкой слово " world!":
Примечания
- Для работы с русскоязычными символами, можно подключить заголовочный файл <locale.h>, а в тело функции main() добавить setlocale(LC_ALL, "Russian");
- Не обязательно присваивать значение при создании переменной, так как string по умолчанию приравниваются к пустой строке "".
Рекомендации
- Всегда используйте строки из заголовочного файла <string>! Они не только проще в понимании, но и лучше устроены, что позволит избежать множества проблем с памятью.
- Если Вы все же испытываете необходимость в C-строке, то не забывайте добавить '\0' в конец! Иначе при уничтожении строковой переменной может возникнуть такая ситуация, как утечка памяти.