zoukankan      html  css  js  c++  java
  • c语言:自增自减运算符的操作详解

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

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

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

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

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


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

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

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

    好了,讲述就到这里了。

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

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

  • 相关阅读:
    使用Python将excel文件中的数据提取到txt中
    多项式加法的链表实现
    hdu 5976 Detachment 逆元的应用
    JavaScript 全局函数
    JavaScript 事件句柄
    JavaScript 运算符
    纯Javascript 实现的日历 ,在IE所有版本浏览器上测试通过,火狐、谷歌、360、QQ等浏览器均兼容,理论上均兼容所有浏览器
    HTML ASCII 代码
    JavaScript 浏览器版本判定
    Delphi WebBrowser内核版本修改
  • 原文地址:https://www.cnblogs.com/roobtyan/p/9576746.html
Copyright © 2011-2022 走看看