关于C++中printf

来源:百度知道 编辑:UC知道 时间:2024/05/16 18:36:39
int i=43;
printf("%d\n\n",printf("%d",printf("%d",i)));
请问结果为什么是:4321

printf函数的返回值是输出的元素个数,所以printf("%d",i)输出了43,返回值是2(因为43是两个数字);printf("%d",printf("%d",i));就是输出2的值,此时返回值是1(因为2是1个数字);printf("%d\n\n",printf("%d",printf("%d",i)));就输出了1了。最终的结果就是4321

最右边的printf输出43 返回2,第二个输出2返回1,最后输出1

例:
1.如果 int i=432的话就输出结果:43231

最右边的printf输出432 返回3 第二个输出3返回1 最后输出1

2.如果 int i =4321 输出结果:432141

最右边的printf输出是4321 输出4321 返回4 第二个输出4返回1 最后输出1

你明白什么叫"函数调用"吧?