C++ 如何在创建一个整数之前测量字符串的长度

C++ 如何在创建一个整数之前测量字符串的长度,c++,c++11,C++,C++11,我得到了一个数字列表(int和doubles),需要将其作为字符串导出到缓冲区。必须事先保留缓冲区。出于速度和大小的原因,我不想创建字符串,测量它的大小,然后在缓冲区中再次创建它。不,使用的系统不允许创建整个字符串并在以后复制它。对于整数,您需要下限(log10(number))+1十进制数字(根据需要调整为0和符号) 对于双打来说,情况有点复杂——这取决于你想如何表现他们。最重要的是,您介意在小数点后拖尾0s吗?科学记数法是一种选择吗 一种方法是:您需要在字符串中表示IEEEdouble,以便

我得到了一个数字列表(
int
double
s),需要将其作为字符串导出到缓冲区。必须事先保留缓冲区。出于速度和大小的原因,我不想创建字符串,测量它的大小,然后在缓冲区中再次创建它。不,使用的系统不允许创建整个字符串并在以后复制它。

对于整数,您需要
下限(log10(number))+1
十进制数字(根据需要调整为0和符号)

对于双打来说,情况有点复杂——这取决于你想如何表现他们。最重要的是,您介意在小数点后拖尾
0
s吗?科学记数法是一种选择吗

一种方法是:您需要在字符串中表示IEEE
double
,以便可以毫不含糊地重建它。因此,始终保留这17位数字加上句点,并使用上面的整数公式计算整数部分