跨平台FormatString

时间:2012-08-15 23:45:31

标签: c++ multilingual printf format-string

到目前为止,我一直在使用FormatString来使用编号变量($1$2等)格式化多语言字符串 - 但是,它不是跨平台兼容的。 / p>

是否有sprintf - esque函数是跨平台的,它做同样的事情?它不需要分配内存或任何东西 - 只需要能够处理可能位于字符串中不同位置的带编号的伪变量。

如果提供类似的功能,

Boost是可以的。

1 个答案:

答案 0 :(得分:1)

我想看一下boost :: format。我已经使用了一段时间,效果很好。

另一个选择是使用std :: stringstreams格式化输出。如果您不想或不能使用boost,那几乎是唯一的便携式选项,另外作为奖励,语法更具可读性恕我直言。

与通常的C API相比,这两个库都是类型安全的,因此在C ++上下文中使用也更好,更安全。