c - 使用 printf 的可变长度空间

标签 c printf

我正在尝试格式化一些 printf 语句以允许任意级别的缩进。 理想情况下,我想要以下输出,其中“一”、“二”等是可变长度日志消息的占位符。

One
 Two
  Three
 Two
One

我正在研究缩进所需的可变长度间距,我知道我可以执行以下操作:

printf( "%*s", indent_level, "" );

但我想知道是否有没有第二个空字符串 arg 的方法。

最佳答案

您可以将要打印的内容作为参数传递:

printf( "%*s", indent_level + strlen(mystr), mystr );

关于c - 使用 printf 的可变长度空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3214805/

相关文章:

c - 如果没有收到 FIN/ACK 或 RST,如何终止 tcp 服务器程序中的 tcp 连接

iphone - 拍摄当前 Photoshop 文件的快照

c - 未定义对“sqrt”的引用

在c中连接字符串和snprintf

intmax_t 可以容纳 size_t 吗?

将数据添加到文件然后对输入的数据进行排序的 C 程序

c - 不允许输入第一个值的打印功能

c - 从 fgetc() 读取输入并使用 printf() 打印

java - printf 中 Java 的 "%n"是怎么回事?

c - git 存储库中的备用/多个目录结构映射