我爱电脑与体育
2015-01-27 17:54
a++,++a,不是算出的终值都是一样的么?
int a = 5;
int b = 5;
System.out.println("a++ 的值 : "+ a++);// 5
System.out.println("a 的值为 : "+a);// 6
System.out.println("a++ 的值 : "+ a++);// 6
System.out.println("a 的值为 : "+a);// 7
System.out.println("++b 的值为 : "+ ++b);// 6
System.out.println("b 的值为 : "+b);// 6
System.out.println("++b 的值为 : "+ ++b);// 7
System.out.println("b 的值为 : "+b);// 7
看下变化
最终是一样的,不过在过程当中是不一样的
比如:
int a = 1;
int b = 1;
int m,n;
m = a++;
printf("m = %d\n", m);
n = ++b;
printf("n = %d\n", n);以上这个小程序打印的结果是 m = 1; n = 2;为什么会出现这种情况呢,是因为a++是先赋值后运算,而++a是先运算后赋值
C语言入门
928107 学习 · 21543 问题
相似问题