c语言:自增自减运算符的操作详解

    xiaoxiao2021-03-25  141

    博主在回忆c语言的基本知识时,突然发现自增自减运算符(--、++)这个知识点有些模糊不清,故博主为了给同为小白的同学们提供一些经验,特写下这篇文章。

    首先,自增自减运算符共有两种操作方式。

    比如,我先定义一个变量a,以“++”为例,共有“a++”、“++a”种操作方式。“下面我们在实际的代码中看一下。

    #include<stdio.h> //自增自减运算符的测试 int main() { int a = 21; int c; c = a--; printf("%d\n", c); a = 21; c = a++; printf("%d\n", c); a = 21; c = --a; printf("%d\n", c); a = 21; c = ++a; printf("%d\n", c); getchar(); }运行后,很轻易的就可以得到输出结果:21、21、20、22。

    由此可知,我们可以得到一个结论:诸如“a++”类自增自减运算符在变量之后的,进行操作时是先赋值,后运算;而“++a”类的操作则正是与此相反。

    其次,我们来看一下上面代码中变量c的变化情况:

    int main() { int a = 21; int c; c = a++; printf("%d\n", c); c = a--; printf("%d\n", c); c = --a; printf("%d\n", c); c = ++a; printf("%d\n", c); getchar(); }运行结果则变成了:21、22、20、21,。为什么会出现这种情况呢?

    以c=a++为例,由上述结论可知,这个表达式实际上是先将a的值赋给c,这样c就等于21,而后续符号操作的则直接是a,所以经过这个表达式之后,a的值实际上变成了22。由此,则可以推出下面的一系列内容。

    好了,讲述就到这里了。

    这篇文章主要是针对c语言小白,各位大神还请借道哈,不要喷我,如果有错误还请帮忙指出,不胜感激。

    本人也是小白一枚,愿与诸君共同进步,通向成神之路!!!

    转载请注明原文地址: https://ju.6miu.com/read-20533.html

    最新回复(0)