运算符与表达式(一)——算术运算符
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++被替换为数值,变量名仍为变量名!
用于各类数值运算,包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算%)、
自增(++)、自减(--)
初学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++被替换为数值,变量名仍为变量名!
相关文章推荐
- MySQL索引,MySQL性能分析及explain的使用,分析SQL查询性能
- java匿名对象
- 关于textField的功能收集汇总
- 【转】4G内存下MySQL修改配置文件以优化效率(来自discuz)
- JAVA反射
- JDBC 通过PreparedStatement 对数据库进行增删改查
- MySQL中的max_connections和max_user_connections 及 MySQL服务器最大连接数的合理设置
- iOS开发之UITextField 左侧设置小图标 leftview
- 约翰·卡马克和他的id Software
- yii2框架中批量上传
- CentOS7 Local yum的一次报错信息
- 如何让Adobe reader 记住上次pdf文档打开位置?
- Android service起动顺序如何控制?
- Unix系统编程(5) - 多线程并发服务器
- Shell脚本中,如何判断Linux系统是32位还是64位?
- Redis 2.8.18 安装报错 error: jemalloc/jemalloc.h: No such file or directory解决方法
- PHP的内存泄露问题与垃圾回收
- linux普通用户获取管理员权限
- 华为OJC++编程题001.计算字符串最后一个单词的长度
- Windows下memcached.exe的安装与配置