解释为什么将printf的值存储在变量中然后打印它会给出额外的值?

时间:2014-07-17 13:52:21

标签: printf

int d; d=printf("\n%d%d%d%d",1,2,3,4); printf("%d",d);

代码将输出显示为1,2,3,4,5。 我不明白为什么要打印一个大于最后一个整数的整数。

1 个答案:

答案 0 :(得分:1)

printf返回写入的字符总数。在第一个printf调用中,来自4个变量的4位数和换行符加起来为5.所以返回值是5,这是你在第二次调用中得到的。