РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
157 of 815 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 для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить