您好我想用C / C ++格式化我的二进制搜索树的输出,而不是每次都进行硬编码。我看到人们使用(%*,int),但它对我没用。
printf("%* %-s\n", format, String") format = format*2
printf("%* %-s\n", format, String")
我想要这样的输出
String
String
答案 0 :(得分:3)
printf
格式可以使用宽度和精度参数的变量参数:
printf("%*s\n", width, str);
将输出在width
个字符上右对齐的字符串,并带有前导空格。
如果字符串长度超过width
个字符,则不会被截断。如果您希望左对齐尾部空格,请添加-
选项并使用"%-*s\n"
。
如果希望对齐和截断字符串,请以这种方式使用width和precision参数:
printf("%*.*s\n", width, width, str);