如何将 std::string 转换为 char* 或 const char*?
std::string
char*
const char*
char* dest = new char[str.length() + 1]; std::copy(str.begin(), str.end(), dest)
strcpy()
malloc()
试试这个
std::string s(reinterpret_cast<const char *>(Data), Size);
char* dest = new char[str.length() + 1]; std::copy(str.begin(), str.end(), dest)
会更符合C++的惯用方法。使用strcpy()
和malloc()
并没有错或问题,但在同一段代码块中使用C++字符串和C库函数以及等价的C++函数看起来不太一致。 - boycy