c++ - 如何将 std::basic_string 类型转换为 char 类型的数组?

标签 c++ string type-conversion

运行此代码时出现以下错误:

syslog(LOG_ERR | LOG_USER, "%s",errorString);

cannot convert ‘const string {aka const std::basic_string}’ to ‘const char*’ for >argument ‘2’ to ‘void syslog(int, const char*, ...)’ inServer.cpp /PeCounter
line 478 C/C++ Problem

我正在守护程序,当使用 cout 输出到 stdio 时,errorString 值打印得很好,但在使用 syslog 调用时不会打印。

将 std::basic_string(char) 转换为 'const char' 形式的任何方法。

最佳答案

我发现 std::basic_string 有一个项目访问方法 c_str() 似乎解决了编译问题。

这是一个提供更多信息的网站:http://en.cppreference.com/w/cpp/string/basic_string

关于c++ - 如何将 std::basic_string 类型转换为 char 类型的数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12978201/

相关文章:

arrays - 在 ActionScript 数组 (Object[]) 和 Vector.<Object> 之间转换

c++ - 系统函数似乎忽略了引号

具有重复外观的两个字符之间的 Java 正则表达式模式

c# - 类型转换和转换有什么区别?

java - 字符串拆分,过滤和加入单行 java 8

c - C中的字符串数组

c++ - printf 在使用 %.22f 时更改值

c++ - 分组控件

c++ - 枚举数据和 vector 错误 : expression must be a modifiable lvalue

c++ - 我应该为 BigInt 类使用什么数据结构