printf("%d\n",a++); printf("%d\n",++a);
是不是第一步运行完以后,取值就已经加一了,之后第二步又加了一个一?
第一步a++是先使用a的值后加一;
第二步是在第一步加一的基础上先加一后使用;
第一个运行完了后已经加一了 是运行完了才加的1 也就是第一输出的时候a是没有加1的 例如 int a=1;
第一次输出的是1 第二次输出的是三 因为第二次 是先加了再输出的