当前位置:   article > 正文

快速辨别c语言中自增自减运算符的前缀和后缀模式_自检自增前缀和后缀的区别

自检自增前缀和后缀的区别
#include<stdio.h>
int main()
{
    int a = 9;
    int c = a++;
    printf("%d\n", c);
    c = --a;
    printf("%d\n", c);
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

运算结果:
在这里插入图片描述
运算过程其实就是
首先看到是后缀模式,先赋值后运算,先把9赋值给c,a再进行自增运算,此时,a是10,c是9.所以第一次输出c也就是9

然后看到是前缀模式,先运算后赋值,先把a=10进行一次自减运算,此时a=9,然后把a=9赋值给c,所以第二次输出c也是9;

总结一下就是,前缀模式就是符号在前,所以先进行运算,后缀模式是符号在后,所以是后进行运算。

上面是一种理解方式,那么进一步来理解前缀和后缀最本质的区别就是

以这段代码为例,a的初始赋值为9,那么此时对a做一个自增自减运算时,无论你是前缀模式还是后缀模式,a的值都会增加,即a的值已经是10了,而区别就在于,如果你是后缀模式,那么(a++)这个式子的值为9,如果你是前缀模式,那么(++a)这个式子的值为10。也就是说这二者的区别在于这二者的缀表达式的值有一丝差别。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/914560
推荐阅读
相关标签
  

闽ICP备14008679号