关于C语言 printf("%d\n",printf("%d",printf("%d",i)));#include int main(){int i=43;printf("%d\n",printf("%d",printf("%d",i)));return 0;}如何解释它的输出是4321如果从最内层往外输 不应该是4312么?囧
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/03 16:41:42
![关于C语言 printf(](/uploads/image/z/3990306-66-6.jpg?t=%E5%85%B3%E4%BA%8EC%E8%AF%AD%E8%A8%80+printf%28%22%25d%5Cn%22%2Cprintf%28%22%25d%22%2Cprintf%28%22%25d%22%2Ci%29%29%29%3B%23include+int+main%28%29%7Bint+i%3D43%3Bprintf%28%22%25d%5Cn%22%2Cprintf%28%22%25d%22%2Cprintf%28%22%25d%22%2Ci%29%29%29%3Breturn+0%3B%7D%E5%A6%82%E4%BD%95%E8%A7%A3%E9%87%8A%E5%AE%83%E7%9A%84%E8%BE%93%E5%87%BA%E6%98%AF4321%E5%A6%82%E6%9E%9C%E4%BB%8E%E6%9C%80%E5%86%85%E5%B1%82%E5%BE%80%E5%A4%96%E8%BE%93+%E4%B8%8D%E5%BA%94%E8%AF%A5%E6%98%AF4312%E4%B9%88%3F%E5%9B%A7)
关于C语言 printf("%d\n",printf("%d",printf("%d",i)));#include int main(){int i=43;printf("%d\n",printf("%d",printf("%d",i)));return 0;}如何解释它的输出是4321如果从最内层往外输 不应该是4312么?囧
关于C语言 printf("%d\n",printf("%d",printf("%d",i)));
#include
int main()
{
int i=43;
printf("%d\n",printf("%d",printf("%d",i)));
return 0;
}
如何解释它的输出是4321
如果从最内层往外输 不应该是4312么?囧
关于C语言 printf("%d\n",printf("%d",printf("%d",i)));#include int main(){int i=43;printf("%d\n",printf("%d",printf("%d",i)));return 0;}如何解释它的输出是4321如果从最内层往外输 不应该是4312么?囧
#include
int printf( const char *format, ... );
首先 得看printf的返回类型是 int
这个函数的返回值是 你输出的位数
所以 printf 43返回值就是2 printf 2返回值是1
还有一个你要了解的是 printf函数处理方式 从右至左 所以先执行printf i 输出 43 返回2 然后执行 printf 2 输出2 返回1
最后 我就不用多说了吧