c - 为什么将 printf 的结果传递给另一个 printf 有效?

标签 c printf

<分区>

下面的代码是如何工作的?

void main()
{
    printf("%d", printf("earth"));
}

输出为:earth5

最佳答案

printf 的返回值是打印的字符数。内部 printf 首先被调用。相当于:

int rc = printf("earth");
printf("%d", rc);

关于c - 为什么将 printf 的结果传递给另一个 printf 有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12625920/

相关文章:

C 编程 %d { printf ("%d"); }

c - 为什么编译器会提示这个 `sprintf` 参数?

c++ - 构造函数内部的 Printf 未显示在控制台中

c - 仅当值不同时才替换它们

c - 错误输入时的 scanf 设置值

c - 简单的 IF 语句 scanf

c - 为什么在使用 printf 时在地址上使用表达式会表现得很奇怪

c++ - 用 sprintf 填充

c - 如何在框架中使用 Swift 文件中的 C dylib

c - 在 C 中每次使用冒号 (":")