救救孩子!!!
各位大佬,为什么下面这个算出来是18,22,8,8呢?#include <stdio.h>
int main()
{
int i = 5, j = 5, p, q;
p = (i++)+(i++)+(i++);
q = (++j)+(++j)+(++j);
printf("%d, %d, %d, %d", p, q, i, j);
} 救不了了,但凡研究此类问题的孩子都没得救了 首先,是 18 21 8 8
不是 18 22 8 8
i++ 是 运行结束后自增
++j 是运行之前就自增
所以 p = 5+6+7=18
q=6+7+8=21 Daniel_Zhang 发表于 2021-3-13 22:12
首先,是 18 21 8 8
不是 18 22 8 8
谢谢啦啦啦啦啦!
页:
[1]