我们都知道基于C语言的printf("%11d",some_int); 意味着在11个字符的字段内对齐,但是如果我想用动态变量替换这个常量11,我该怎么办?
Fré*_*idi 18
您可以使用该*
字符在其自己的参数中指定字段宽度:
printf("%*d", some_width, some_int);
Run Code Online (Sandbox Code Playgroud)
您将阅读该printf(3)
手册页并遇到以下内容:
代替十进制数字串之一可写"*"或"*M $"(对于一些十进制整数m)至指定的字段宽度在下一个参数给出,或者,分别在第m个参数,它必须的属于int类型.