我想知道,使用 fprintf 打印的 double 最长的字符数是多少?我的猜测是错误的。
提前致谢。
最佳答案
12 有点低估了。在我的机器上,以下结果是一个 317 个字符长的字符串:
#include <limits>
#include <cstdio>
#include <cstring>
int main()
{
double d = -std::numeric_limits<double>::max();
char str[2048] = "";
std::sprintf(str, "%f", d);
std::size_t length = std::strlen(str);
}
使用 %e
产生 14 个字符长的字符串。
关于c++ - C++中打印 double 的最大宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3048200/