- 论坛徽章:
- 0
|
最近看了一本practial c的书,关于这道题:value = 1; result = (value++ * 5) + (value++ * 3)
我的系统是mac osx的在终端下这样写:
#include <stdio.h>
int value, result;
int main(){
value = 1;
result = (value++ * 5) + (value++ * 3);
printf("result is %d value is %d", result, value);
return (0);
}
这样执行后得到结果是result is 8 value is 2
接着这样写:
#include <stdio.h>
int main(){
int value, result;
value = 1;
result = (value++ * 5) + (value++ * 3);
printf("result is %d value is %d", result, value);
return (0);
}
得到的结果是result is 8 value is 3
对value的值觉得有点不理解,怎么上面只++一次,而下面的写法却++两次?
哪位精通的能不能回答一下. |
|