我试图用这样的方法填充一个带有double值的字符串sprintf:
sprintf
sprintf(S, "%f", val);
但精度正在被削减到小数点后六位.我需要大约10个小数位才能达到精度.
怎么能实现呢?
%[宽度].[精度]
宽度应包括小数点.
%8.2表示8个字符宽; 点前5位和后2位.该点保留一个字符.
5 + 1 + 2 = 8
你想要的是一个修饰符:
sprintf(S, "%.10f", val);
man sprintf将有更多关于格式说明符的细节.