c_str у std::string. Тип результата - const char*.">
Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗cpSpCsCs 282 of 696 menu
◀ ▶

Указатель из std::string в C++

Указатель из string - адрес буфера с текстом и '\0', который дает метод c_str у std::string.

Тип результата - const char*. Пока живет сам объект std::string, через этот указатель можно читать актуальный текст. Запишем именованную строку, возьмем указатель и выведем его содержимое:

#include <string> #include <iostream> std::string title = "book"; const char* raw = title.c_str(); std::cout << raw << "\n";

После изменения std::string старый указатель может стать недействительным - каждый раз берут c_str заново. Не сохраняют указатель от временного объекта: выведем текст только пока переменная в области видимости:

#include <string> #include <iostream> std::string label = "item"; const char* view = label.c_str(); label = label + "s"; view = label.c_str(); std::cout << view << "\n";

Создайте std::string city со значением "spb". Выведите city.c_str через std::cout с "\n".

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить