cha*_*.ct 0 c c++ xml printf openframeworks
我正在使用openframeworks开发一个项目,最近我在编写XML时遇到了一些问题.我已将问题追溯到sprintf:
似乎在某些条件下,sprintf调用可以在浮点数上写入逗号而不是点(例如"2,56"而不是"2.56").在我的语言环境中,浮动数字用','表示,以将小数与单位分开.
我无法在一个简单的示例中重现此行为,但我通过使用stringstream对值进行字符串处理来解决问题.
我很好奇sprintf使用不同的本地化的情况.当sprintf使用','而不是'.'时 以及如何控制它?
小数分隔符由LC_NUMERIClocale变量控制.设置setlocale的细节.将其设置为"C"语言环境将为您提供一段时间.您可以通过查看返回的(只读)结构来查找当前语言环境的字符和设置localeconv.