有没有办法将boost :: tuple传递给printf()?printf boost:tuple
0
A
回答
3
不是直接的,因为printf
需要特定的格式说明符。您需要一次打印每个元素。
您可以制作一个模板函数,它迭代元组的元素,将其打印出来。 This question地址。也就是说,除非每个元素都可以用printf
打印出来,否则这将不起作用。
相反,为什么不使用iostream
代替?那么你可以说std::cout << theTuple
。
1
不,因为“printf”是一个C函数,不知道如何处理C++对象。也就是说,如果你想要做的只是创建一个格式化的消息,你可能想看看The Boost Format Library。
相关问题
- 1. 用printf
- 2. 什么的printf( “%I”)和printf( “%d”)
- 3. 的“printf”乱码
- 4. 两行STRLEN printf?
- 5. C++ printf舍入?
- 6. printf in GLSL?
- 7. printf和阵列
- 8. printf问题
- 9. 如何用printf
- 10. 问题的printf
- 11. 修改printf
- 12. 用printf在c
- 13. printf函数
- 14. Printf doesnt pop
- 15. 'printf'原理
- 16. cout和printf的
- 17. printf的包装
- 18. F#:printf vs Console.WriteLine
- 19. Perl printf问题
- 20. printf for size_t
- 21. C++用的printf
- 22. 重定向printf?
- 23. Printf声明
- 24. c printf signed float
- 25. 为printf的
- 26. C编程printf
- 27. C stdout printf
- 28. php:echo“”,print(),printf()
- 29. printf awk舍入
- 30. Java和printf
std :: string hovewer has c_str() – dimba 2009-12-07 05:03:52
@idimba,...和? c_str()的结果是const char *。您不能将std :: string类型的对象直接传递给printf。 – 2009-12-07 08:58:49