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: printf char* 返回奇怪的最后一个字符

C:没有显式返回构造的结构,但它仍然有效

c - C 中的堆栈溢出错误,在任何步骤之前

c - 我的 C 编程工作

c - 将程序构建为库时处理静态函数

c - 如何在 C 中打印引号?

c - 程序在应该停止时没有停止,如何解决这个问题?

java - 未知格式转换异常?

带有 () 和 {} 的 C 预处理器宏代码

perl - 如何以矩阵格式打印数组