Может кто-нибудь сказать мне, как используется функция c_str () в C / C ++ ?. В каком случае его нужно использовать?
Когда вы хотите использовать вашу строку с C-функциями
string s = "hello"; printf( "your string:%s", s.c_str() );
Это C ++, а не C.
Обычное использование c_str (из std::string) - это точное преобразование C ++ std::string в const char* Строка C, которая требуется для многих многих функций C низкого уровня (например, системных вызовов Posix, таких как stat и т. Д.).
std::string
const char*
stat
Создает последовательность символов с нулем в конце (c-string) с тем же содержимым, что и строковый объект, и возвращает его в виде указателя на массив символов.
СуществуетХороший пример его использования здесь: http://www.cplusplus.com/reference/string/string/c_str/
Полагаю, вы спрашиваете о string::c_str()?Это метод, который возвращает строковое представление C объекта string.Например, вам может потребоваться строковое представление C для вызова API OS.
string::c_str()
string