gpt4 book ai didi

c - 'sprintf' : double precision in C

转载 作者:太空狗 更新时间:2023-10-29 16:34:58 24 4
gpt4 key购买 nike

考虑:

double a = 0.0000005l;
char aa[50];
sprintf(aa, "%lf", a);
printf("%s", aa);

Output: s0.000000

在上面的代码片段中,变量aa 只能包含六位小数精度。我想得到类似“s0.0000005”的输出。我如何实现这一点?

最佳答案

从你的问题来看,你似乎使用的是 C99,因为你使用了 %lf 作为 double。

要实现所需的输出替换:

sprintf(aa, "%lf", a);

sprintf(aa, "%0.7f", a);

一般语法"%A.B"表示小数点后使用B位。 A的意思比较复杂,不过可以看一下here .

关于c - 'sprintf' : double precision in C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1786497/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com