что такое использование функции C_str () в C / C ++ - PullRequest
3 голосов
/ 08 ноября 2011

Может кто-нибудь сказать мне, как используется функция c_str () в C / C ++ ?. В каком случае его нужно использовать?

Ответы [ 4 ]

6 голосов
/ 08 ноября 2011

Когда вы хотите использовать вашу строку с C-функциями

string s = "hello";
printf( "your string:%s", s.c_str() );
4 голосов
/ 08 ноября 2011

Это C ++, а не C.

Обычное использование c_str (из std::string) - это точное преобразование C ++ std::string в const char* Строка C, которая требуется для многих многих функций C низкого уровня (например, системных вызовов Posix, таких как stat и т. Д.).

1 голос
/ 08 ноября 2011

Создает последовательность символов с нулем в конце (c-string) с тем же содержимым, что и строковый объект, и возвращает его в виде указателя на массив символов.

СуществуетХороший пример его использования здесь: http://www.cplusplus.com/reference/string/string/c_str/

0 голосов
/ 08 ноября 2011

Полагаю, вы спрашиваете о string::c_str()?Это метод, который возвращает строковое представление C объекта string.Например, вам может потребоваться строковое представление C для вызова API OS.

...