#include<stdio.h>
#include<string.h>
#include<math.h>
#define N 10000
int main()
{
int i, j, k, n, m;
j = 0;
k = 0;
for (i = 0; i <10;k=i, ++i,j=1)
{
printf("---\n");
printf("k=%d\n", k);
printf("j=%d\n", j);
printf("i=%d\n", i);
}
printf("i====%d\n", i);
printf("\\\\\n");
for (i = 0; i < 10; k=i,i++, j = 2)
{
printf("---\n");
printf("k=%d\n", k);
printf("j=%d\n", j);
printf("i=%d\n", i);
}
printf("i====%d\n", i);
return 0;
}
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/10dfa9ec8a136327eca464bd9b8fa0ec09fac7f7?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
从结果我们可以看出这样几点:
1.for循环先执行前两个分号内的内容,然后执行大括号的内容,最后执行第二个分号后的内容
2.在++i和i++的形式下i都完成了i=i+1的操作,这个操作在这个地方不分先后。因为最后都是吧i+1赋给了原来的i