对于自加自减的理解

前言:   

        C语言中很多地方都会用自加(++)、自减(--)运算符来参与一些运算,这也是C语言的主要特色之一,    如果可以掌握并合理的利用这一特性,可以优化我们的C程序。    而自加自减也是对于刚接触C语言编程的人来说,比较难想通,很容易造成错误,可是考试的卷子也经常出现类似的题目。
自增自减的定义
    自增++:使变量的值加1
    自减--:使变量的值减1
    ++、-- 单目运算符,结合方向从右至左,优先级为2
    自增包含:前置自增和后置自增
    前置自增(++i):会先使用原来的变量值参与运算,然后再+1
    后置自增(i++):会先使变量的值+1,之后在参与运算。
 例子:

 

细看:a的初始化值为5,a++根据含义是先赋值在+1,所以第一次输出a++的值其实是a的值,再次输出的是运算后的值6。

b的初始值为5,++b的含义是先++在赋值,所以第一次输出++b的值就是变量+1后的值,再次输出b的值就是变化后的值。
    自减包含:前置自减和后置自减
    前减自增(--i):会先使用原来的变量值参与运算,然后再-1
    后减自增(i--):会先使变量的值-1,之后在参与运算。

 例子:

细看:a的初始化值为5,a--根据含义是先赋值在-1,所以第一次输出a--的值其实是a的值,再次输出的是运算后的值6。

b的初始值为5,--b的含义是先--在赋值,所以第一次输出--b的值就是变量-1后的值,再次输出b的值就是变化后的值。

 

自增自减运算:自增自减运算符自能用于变量,不能用于常量或者表达式


    i+++j???    是i+(++j) 还是 (i++)+j呢?
    注:为避免二义性,自增自减参与运算的时候要加括号括起来。
    

给大家一带思考题???


    对于这个问题是对于不同的编译器的解析会有所不同,欢迎讨论。

  • 14
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值