printf("%.2f",..);
我想控制上面例子中的数字2,输入一个变量而不是数字2.
所以,如果
int var=5;
printf的参数将是"%。5f"。
有可能吗?感谢。
答案 0 :(得分:5)
这应该适合你:
测试它的一个小例子程序:
#include <stdio.h>
int main() {
float f = 4.3234;
int x = 2;
printf("%.*f", x, f);
return 0;
}
有关详细信息,请参阅:http://www.cplusplus.com/reference/cstdio/printf/
答案 1 :(得分:-1)
检查
int main(int argc, char* argv[])
{
char format[16];
int number;
number = 5;
snprintf(format, sizeof(format), "%%.%df", number);
printf("%s\n", format);
return 0;
}