您的位置:首页 > 其它

运算符与表达式(一)——算术运算符

2016-07-16 08:53 141 查看
算术运算符:

用于各类数值运算,包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算%)、

自增(++)、自减(--)

初学C语言时一直以为很简单的自增、自减,却每次都算错,颠覆人生观啊有没有!

C语音学了两年后,仍然算错,下面就来一波自增运算,感觉这辈子都不会错了呢!

首先,说一下i++,++i的区别:

i++: i使用完再自加

++i: i自加后再使用

废话不多说,实例展示:



是不是大多数人的答案都是:

i = 6, num = 2 + 3 + 4 + 5 = 14

i = 6, num = 3 + 4 + 5 + 6 = 18

i = 6, num = 3 + 3 + 4 + 4 = 14

i = 6, num = 2 + 3 + 3 + 4 = 12

下面看看正确答案:



为什么呢?

下面具体讲解运算过程:

num = (i++) + (i++) + (i++) + (i++); num = 2 + 2 + 2 + 2 = 8;遇到最后的分号才自加,i++= 2

num = (++i) + (++i) + (++i) + (++i); num = 4 + 4 + 5 + 6 = 19;两个操作数都算出才算加法,所有前两个操作数都为4

num = (++i) + (i++) + (++i) + (i++); num = 3 + 3 + 4 + 4 = 14;

num = (i++) + (++i) + (i++) + (++i); num = 3 + 3 + 3 + 4 = 13;

i++:所谓使用完,即遇到结束标志再自加;

结束标志:分号、逗号、函数的括号

实例如下:



在函数中,参数是从右边开始传参的!总结为下面几句话:

++i被替换为变量名,i++被替换为数值,变量名仍为变量名!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: