为了账号安全,请及时绑定邮箱和手机立即绑定

#30天编程#01天-C语言递增与递减

标签:
C

# 自增与自减


在C语言汇总的运算中有 a++, ++a, a--,--b 四种不同的递增和递减的方式。下面就这四种使用场景分别说明。


这个操作符放在前面与放在后面的区别主要是:


## a++, b-- 操作符放后面

看下面的代码

# include <stdio.h>

int main()
{       
        int a=10,b=0;
        b = a++;
        printf("a = %d, b = %d \n",a,b)
        
        return 0;
}

上面的代码定义了 a的值为10,b的值为0;

关键是看`c=a++`  这段代码,这段代码主要是将 a的值递增并赋值给b变量。

现在的问题就是 是先把a的值赋给b,还是a递增之后的值给b?

我们执行代码可以看到结果。

b的值为10,说明 先赋值给b,然后再递增。


同理b--的代码可以推断,应该也是赋值,然后才递减。

# include <stdio.h>

int main()
{
    int a=10,b=0;
    b = a--;
    printf("a = %d, b = %d \n",a,b);

    return 0;
}


所以结果为 a = 9 b=10



## ++a,--a 操作符放在前面

根据上面 a++ 操作符放在后面的结果来推断

++a 格式的操作 应该是 先递增再赋值。

我们可以写段代码来看下

# include <stdio.h>

int main()
{
    int a=10,b=0;
    b = ++a;
    printf("a = %d, b = %d \n",a,b);

    return 0;
}



所以上面的代码 a的值递增后变成11, 然后将值赋给b,b的值也为11。


同理, --a也是一样。

如下面代码

# include <stdio.h>

int main()
{
        int a=10,b=0;
        b = --a;
        printf("a = %d, b = %d \n",a,b);

        return 0;
}


a = 9 b=9

# 总结


- 符号放在前面 即b = ++a ,执行的时候先进行递增,再进行赋值,所以运算之后的值 a和b都一样。

- 符号放在后面 即b= a++, 执行的时候先进行赋值,再进行赋值,所以运算之后 a的值比b多1。


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消