博主在回忆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语言小白,各位大神还请借道哈,不要喷我,如果有错误还请帮忙指出,不胜感激。

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

c语言:自增自减运算符的操作详解相关推荐

  1. c语言ll和 amp amp 优先级,关于C语言自增自减运算符的灵活使用.pdf

    DOI:10.3969/j.issn.1001-8972.2012.24.035 {int m=2,n: n=fun(m,++m): l?rintf("%d",n):} int f ...

  2. c语言自增自减5运算符详解,巧用C语言中的自增自减运算符

    黄建琼 摘要:自增自减运算符在C语言的编程过程中经常用到,具有重要的作用,而灵活使用自增自减运算符则是个难点.该文从几个例子入手,观察运行的结果,对结果进行分析,最后得出结论.以期能使初学者避重就轻, ...

  3. C语言系列之自增自减运算符的用法(二)

    运算符中最难理解的有自增自减运算符的使用方法,下面我将简单总结一下他们的使用方法 我们知道,C语言运行是由右向左运行的 下面我们来看一个例子 当i等于3的时候 j=++i; 由上面可知,C语言是由右向 ...

  4. C语言连续自动自加怎么表示,为什么不建议在C语言中连续使用自增自减运算符...

    相信很多coder在学习C语言(包括C++)的过程中都听说过这样的建议:慎用自增自减运算符. 这是因为,在函数参数或者表达式中多次调用自增自减运算符很可能产生"不可预知的结果".究 ...

  5. c语言3u减1,C语言的自增自减运算符及应用

    在C语言中,经常使用自增自减运算符.本文结合实例,对C语言中自增自减运算符的应用技巧进行了分析. 维普资讯 http://doc.xuehai.net J u a fAn a gT a h r olg ...

  6. c语言中自增自减运算符,C语言中自增自减运算符的深入剖析

    C语言中自增自减运算符的深入剖析 李文广 李俊荣 赵妍 . (1.沧州职业技术学院,2沧州工贸学校) [摘要]本文从多方面对自增自减运算符分析.讲解,以便让初学者 能够清晰自增自减运算符的运算规律,学 ...

  7. C语言——赋值运算符、复合的赋值运算符、自增自减运算符、逗号运算符、条件运算符、goto语句、注释

    目录 一.赋值运算符 二.复合的赋值运算符 三.自增自减运算符 四.逗号运算符 逗号表达式的语法 五.条件运算符 六.goto语句 七.注释 一.赋值运算符 语法: - int a; - a = 5; ...

  8. 关于printf()与自增自减运算符结和问题

    1.问题描述: #include<stdio.h> int main() {int i=3;printf("%d %d %d %d %d",i++,++i,++i,i+ ...

  9. C语言自加自减运算符(++i / i++) - C语言零基础入门教程

    目录 一.C 语言自加++ / 自减 – 运算符简介 1.前 ++ 后 ++ 的区别 2.前–后-- 的区别 二.C 语言自加++/自减–运算符实战 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : ...

最新文章

  1. 加载特征主数据自动删除重复关键值
  2. 程序员必须要掌握的十大经典算法
  3. 架构师讲解Java中websocket的应用
  4. 各抓包软件的之间差异_系统软件和应用程序软件之间的差异
  5. android预览界面编译出错,Android O预览findViewById编译错误
  6. Swift变量名的一种玩法
  7. 数据库sql server 2008安装。
  8. docker php安装gd扩展_Linux安装redis及安装php-redis扩展
  9. 美国 CISA 和 NIST 联合发布软件供应链攻击相关风险及缓解措施
  10. sql select 0 字段 某字段是不在指定的表
  11. 中国图书评论协会2019年度“中国好书”
  12. CSND默认markdown样式
  13. python达梦数据库_Python 封装 DM 达梦 数据库操作(使用类封装基本的增删改查)...
  14. hadoop配置历史服务器
  15. Halcon 汉字识别
  16. 高分一号WFV影像云检测工具(免费)
  17. 机器人无限火力无限e符文_2021LOL无限火力机器人天赋符文、出装推荐-无限火力机器人玩法介绍-色彩电竞...
  18. .Net Micro Framework 嵌入式开发
  19. linux查询进程号是否存在启动脚本,Shell实现判断进程是否存在并重新启动脚本分享...
  20. 网页编码与数据传递中的中文字符编码

热门文章

  1. 离散时间傅里叶变换,Z变换,离散傅里叶变换性质对比
  2. 饥荒时用java写的吗_【图片】类与对象面向对象编程【饥荒mod制作吧】_百度贴吧...
  3. 基于jsp+mysql+Spring+mybatis的SpringBoot美容院预约管理系统
  4. VCS partition compile
  5. AI:人工智能领域之AI基础概念术语之机器学习、深度学习、数据挖掘中常见关键词、参数等5000多个单词中英文对照(绝对干货)
  6. 为什么这么多人说,读大学,没什么卵用
  7. java 十进制转二进制代码_十进制转二进制代码
  8. 和风API商业版和免费开发版以及认证开发者差异
  9. rdp远程连接windows和linux,详解 Linux 和 Windows 间的远程桌面访问
  10. oracle instr函数