i++;++i;i--;--i 的区别

两次运行下面的程序,如果从键盘上分别输入6和3,则输出结果是(     )。
int x;
scanf("%d",&x);
if(x++>5)   printf("%d",x);
else   printf("%d\n",x - -);
A. 7和5      
B. 6和3      
C. 7和4       

D. 6和4

++i, 表示参与运算之前先自加1.
i++,表示参与运算以后再加1.
--i, i-- 类似。 
在C++里面,可以通过运算符重载修改这种默认行为,在C语言理解或者其他计算机语言里面这点都是一样的。

1. x = 6;
if(x++>5) //条件判断的时候 6 >5
printf("%d",x); //所以执行。 但判断语句执行完成以后 x 自加1, 所以打印出来7.

2. x=3;
if(x++>5) //条件判断的时候,3 >5,不成立,这句执行完成以后 x 自加1,现在x为4.
printf("%d",x);  //此句不会执行。
else
printf("%d\n",x - -); //打印时候 x为4, 这句执行完成以后 x 自减1.

所以结果是  7, 4.
 
  
但是如果是单独用的话,他们没有什么和其他东西的运算 
比如 i++ ,++i
那么就直接+1. 


你可能感兴趣的:(C++)