我正在为文件写一个double值。使用点作为小数分隔符写入数值。我想用逗号。我怎么能这样做?
答案 0 :(得分:3)
通常的方法是使用将小数分隔符设置为逗号的语言环境。如果您的计算机通常配置了这个,您可以只使用无名的语言环境:
std::cout.imbue(std::locale(""));
std::cout << 12345.67;
答案 1 :(得分:2)
您可以在earlier question中找到答案 这基本上会改变您正在使用的流所使用的语言环境。
答案 2 :(得分:-1)
我想在图书馆cmath
有一个名为modf的函数,它接受float或double,以及指向float或double的指针,并返回一个整数。
double intPart;
double fractPart;
fractPart = modf(doubleValue, &intPart);
所以你传入double值,它将小数部分作为整数返回,整数值存储在你传入的指针中。
然后你可以根据需要将这些文件写入文件中间,或者用中间的逗号,只需将它写成两个单独的数字即可。 浮动或双重