Программисты больше не нужны!
Нужны ИИ инженеры! Хотите научиться? Вступайте в канал!
164 of 824 menu
◀ ▶

Метод data

Метод data возвращает указатель на внутренний массив символов (C-строку), хранящийся внутри объекта string. Метод не принимает параметров. Возвращаемый указатель имеет тип const char*, поэтому изменять символы через него нельзя. Строка при этом не изменяется. Указатель остаётся действительным до тех пор, пока строка не будет изменена или уничтожена.

Синтаксис

str.data()

Пример

Давайте получим указатель на внутренний массив строки и выведем его как C-строку:

#include <iostream> #include <string> using namespace std; int main() { string str = "abcde"; const char* ptr = str.data(); cout << ptr << endl; return 0; }

Результат выполнения кода:

"abcde"

Пример

Давайте выведем строку посимвольно, обращаясь к её внутреннему массиву через указатель, полученный методом data:

#include <iostream> #include <string> using namespace std; int main() { string str = "12345"; const char* ptr = str.data(); for (int i = 0; i < str.size(); i++) { cout << ptr[i] << " "; } cout << endl; return 0; }

Результат выполнения кода:

1 2 3 4 5

Смотрите также

  • метод c_str,
    который также возвращает C-строку
  • метод size,
    который возвращает размер строки
  • метод length,
    который возвращает длину строки
  • класс string,
    который представляет строку в C++
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить