我有一个不同长度的浮点数组,并且在不同的地方有一个小数点。例如:
0.2345
52.6
208567
有没有办法强制它们都是相同的长度,所以当我将它们写入文本文件时,它们在左右两侧对齐?我目前的输出代码:
for(int i=0; i<50; i++)
{
fileout<< numbers[i] << "\n";
}
fileout来自ofstream
答案 0 :(得分:0)
您可以使用std::to_string
来获取浮点数的字符串表示形式,并使用std::string::resize
将该字符串的大小调整为您的首选长度,例如:
std::string str = std::to_string(numbers[i]);
str.resize(len, '0');
fileout << str << '\n';
如果str.size()
小于len
,则上述内容会附加零以使其足够长。如果str.size()
大于len
,则会删除字符串中的最后一位数字。