【发布时间】:2019-09-18 10:20:58
【问题描述】:
通常,您的 printf() 中有一定数量的占位符,这意味着我必须提前确定一定数量的数字和字符串占位符。
是否可以使您的 printf() 中的占位符数量动态或专门使 %d 占位符打印一个“空”字符
【问题讨论】:
-
如果我有多个彼此相邻怎么办? “宽度”变量的命名有什么关系?还是编译器只是假设“value”前面的变量是“width”变量?
-
@Pingu run-time(不是编译器)只是在找到
%*时从参数列表中获取“下一件事”并将其用作宽度。所以printf( "%d %d", a, b )会使用默认宽度打印两个数字,printf( "%d %*d", a, widthB, b )会正常打印a,然后使用widthB(下一个参数)作为打印b的宽度。printf( "%*d %*d", widthA, a, widthB, b )将为a和b使用(单独的)宽度。
标签: c printf d placeholder digits