«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как преобразовать C ++ std :: string в char* или char []?

Как преобразовать C ++ std :: string в char* или char []?

Опубликовано в 2025-03-23
Просматривать:315

How Do I Convert a C   std::string to a char* or char[]?

]

преобразование std :: string в char* или char []

преобразование std :: string char * или char. преобразовать.

Метод 1: Использование C_STR ()

, чтобы получить версию C-String

std :: string , используйте метод c_str () . Этот метод возвращает const char . Для неконфекции char , используйте . Data () :

std :: string str = "string"; const char *cstr = str.c_str (); // const char* char *cstr = str.data (); // Незащитный char*
std::string str = "string";
const char *cstr = str.c_str(); // const char*
char *cstr = str.data(); // non-const char*

Метод 2: Копирование в вектор ]

Скопировать

std :: string в a std :: vector :

std::string str = "string";
const char *cstr = str.c_str(); // const char*
char *cstr = str.data(); // non-const char*
Метод 3: Ручное массивное распределение (не рекомендуется)

вручную выделяет массив для C-String:

const chstr = new char [str.size () 1]; std :: strcpy (cstr, str.c_str ()); // ... используйте массив ... Удалить [] cstr;

const char *cstr = new char[str.size()   1];
std::strcpy(cstr, str.c_str());
// ... use the array ...
delete [] cstr;
.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3