a++ 和 a–
两者都属于 自增运算符。
a++ 是 先进行 取值, 后 进行 自增。
++a 是先进行 自增, 再 进行 取值。
在C中
#include <stdio.h>
#include <stdlib.h>
int main(){
int i = 1;
printf("i++ : %d\n", i++); // 先赋值 再运行 1
i = 1;
printf("++i : %d\n", ++i); // 先运算 再赋值 2
return 0;
}
在java中
public class test {
public static void main(String[] args) {
int i = 1;
System.out.printf("i++ = %d\n", i++); // 1 先赋值 再 ++
i = 1;
System.out.printf("++i = %d\n", ++i); // 2 先++ 再 赋值
}
}
总结
i在前,++在后, 先赋值 再++。
i在后,++在前,先++ 再赋值。