printf float,尾随零的数量为变量

Sig*_*er3 3 c formatting printf

printf("%.2f",..);
Run Code Online (Sandbox Code Playgroud)

我想控制上面例子中的数字2,放一个变量而不是数字2.

因此,如果

int var=5;
Run Code Online (Sandbox Code Playgroud)

printf的参数将是"%.5f".

可能吗?谢谢.

Riz*_*123 5

这应该适合你:

一个小例子程序来测试它:

#include <stdio.h>

int main() {

    float f = 4.3234;
    int x = 2;

    printf("%.*f", x, f);

    return 0;

}
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请参阅:http://www.cplusplus.com/reference/cstdio/printf/