Avatar ·

如何在 C++ 中将 std::string 转换为 const char* 或 char*?

大家好!我刚开始学习 C++,遇到了一个问题。我有一个 std::string 对象用来存储文本,但我需要将它传递给一个期望 const char* 或 char* 的函数。例如,我在使用一个库,其中有函数: void printMessage(const char* msg); 我尝试传递我的字符串: std::string myString = "Hello, world!"; printMessage(myString); // 编译错误! 编译器报错,无法将 std::string 转换为 const char*。我知道它们是不同的类型,但如何正确地从 std::string 获取 C 字符串?另外,对于某些修改字符串的函数,我还需要获取 char*(非常量)。我尝试过使用 c_str(),但它返回 const char*,而我需要 char*。请告诉我如何安全地做到这一点?提前感谢帮助! <<>>

将 std::string 转换为 const char*

要从 std::string 获取 const char*,请使用方法