c语言问(++)

来源:百度知道 编辑:UC知道 时间:2024/05/17 02:50:10
j++和++j用什么区别主要是怎样体验出来它们的不同...初学者对自++自--理解的很晕.

int a = 0;

int b = ++a; // 把a+1然后赋值给b

int c = a++; // 把a的值赋给c然后++a

最后a = 2,b = c = 1。

++a是把a的当前值加1然后再取加了1后的a作为整个表达式的值;

a++是取a的当前值作为整个表达式的值然后再把a加1。

把前自增和后自增做为单独的一句效果相同但效率不同,如:

++a;
a++;

两个句子执行结束后a都增加1,但a++却走了一步因为它要生成一个临时的temp量来保存a的当前值作为整个表达式的值,而这个值并没有用到,所以这个时候++a需要的运行时间要比++a多那么一点点。

j++和++j的作用是一样

但++在前是先自增,后运算。++在后,就是反过来。

J++是运行完这一句后J加1,++J是运行这句之前J加1。