C++ 可以使用printf()格式的变量吗

C++ 可以使用printf()格式的变量吗,c++,c,format,printf,C++,C,Format,Printf,您好,我想在C/C++中格式化我的二叉搜索树的输出,而不是每次硬编码。我看到有人使用(%*,int),但它对我不起作用 printf("%* %-s\n", format, String") format = format*2 printf(“%*%-s\n”,格式,字符串”) 我想要这样的输出 字符串 字符串printf格式可以使用可变参数作为宽度和精度参数: printf("%*s\n", width, str); 将输出右对齐的宽度字符的字符串,带前导空格。 如果字符串长度超过宽度

您好,我想在C/C++中格式化我的二叉搜索树的输出,而不是每次硬编码。我看到有人使用(%*,int),但它对我不起作用

printf("%* %-s\n", format, String")  format = format*2 
printf(“%*%-s\n”,格式,字符串”)

我想要这样的输出

字符串

字符串

printf
格式可以使用可变参数作为宽度和精度参数:

printf("%*s\n", width, str);
将输出右对齐的
宽度
字符的字符串,带前导空格。 如果字符串长度超过
宽度
个字符,它将不会被截断。如果希望左对齐尾随空格,请添加
-
选项并使用
“%-*s\n”

如果要对齐和截断字符串,请按以下方式使用宽度和精度参数:

printf("%*.*s\n", width, width, str);

printf
格式可以为宽度和精度参数使用可变参数:

printf("%*s\n", width, str);
将输出右对齐的
宽度
字符的字符串,带前导空格。 如果字符串长度超过
宽度
个字符,它将不会被截断。如果希望左对齐尾随空格,请添加
-
选项并使用
“%-*s\n”

如果要对齐和截断字符串,请按以下方式使用宽度和精度参数:

printf("%*.*s\n", width, width, str);