正在将cout格式的数据写入printf
Writing cout-formated data to printf
我正在为一个跨平台的应用程序进行日志记录,我正在努力了解当涉及到例如Android时应该如何做,在Android中,C++中的默认日志记录系统使用printf格式的函数。但是,我想使用'<lt;'操作员可以轻松登录,例如
std::string myName = Johan;
int myID = 1;
mLogger << "Hello my name is: " << myName << " and my ID is: " << myID;
现在,如何将其转换为printf友好格式?有简单的方法吗?
编辑:mLogger是一个输出流。我要超载'<lt;'运算符,并尝试从其输入中以某种方式构建一个格式正确的字符串用于printf。这清楚吗?
您可以使用字符串流来格式化消息:
std::ostringstream msg;
std::string myName = "Johan";
int myID = 1;
msg << "Hello my name is " << myName << " and my ID is: " << myId;
将字符串传递给printf
相当简单:
printf("%s", msg.str().c_str());
printf("Hello my name is: %s and my ID is: %d", myName.c_str(), myId);
相关文章:
- 防止主数据类型C++的隐式转换
- 用于访问容器<T>数据成员的正确 API
- 嵌套在类中时无法设置成员数据
- 使用流处理接收到的数据
- 静态数据成员的问题-修复链接错误会导致编译器错误
- 处理小于cpu数据总线的数据类型.(c++转换为机器代码)
- 在cuda线程之间共享大量常量数据
- C++将文本文件中的数据读取到结构数组中
- 如何在C++中序列化结构数据
- 在C++中打印指向不同基元数据类型的指针的内存地址
- 通过套接字[TCP]传输数据 如何在C / C ++中打包多个整数并使用send() recv()传输数据
- 在c代码之间共享数据的最佳方式
- 链表,反向函数,数据结构
- 数据成员SFINAE的C++17测试:gcc vs clang
- C++浮点数据类型和字符串数据类型无法子到模板函数中
- printf 数据类型说明符复杂问题
- 基于数据类型的printf格式
- printf网络数据
- 正在将cout格式的数据写入printf
- C++:打印数据,printf