1

我对 sscanf 和解析浮点数有疑问。问题是我试图从文本文件中加载浮点数据,但它在 Linux 上的不同语言环境中表现得很奇怪。它似乎取决于操作系统小数点设置(或。),在我加载的文件中,它始终是小数点。

所以代码就像:

sscanf(line[i],"%f %f %f %f %f",&floatbuffer[0],&floatbuffer[1], &floatbuffer[2], &floatbuffer[3], &floatbuffer[4]);

但它不适用于使用逗号 (,) 作为小数点的语言环境,例如 pl_PL。我该如何解决?

4

2 回答 2

3

你有没有尝试过:

#include <locale.h>

setlocale(LC_NUMERIC,"C");
于 2012-05-09T18:50:31.823 回答
1

您可以读/写二进制数据。
但要注意便携性。

于 2012-05-09T18:53:16.130 回答