文章目录

  • 1、用于独立的语句中
  • 2、用于表达式中
  • 3、获取视频教程
  • 4、版权声明

C语言中++是自增运算符,表示操作数自增1;–是自减运算符,表示操作数自减1。

本文以自增运算符++为例来介绍它们的用法。

自增运算符++有两种写法:

1)++书写在变量之后,如:

  int i=10;i++;

2)++书写在变量之前,如:

  int i=10;++i;

++运算符书写在变量之后和在变量之前有区别吗?

有,看应用的场景。

1、用于独立的语句中

在一个独立的语句中,++书写在变量之后和之前的没有区别。

例如:

  int i=10;i++;  // 或++i;printf("i=%d\n",i);  // 输出i=11

以上代码,第二行不管是i++;还是++i;,效果相同,最后都是输出i=11。

2、用于表达式中

如果用于表达式(如赋值语句和函数参数)中,++书写在变量之后,表示使用变量之后再自增,如果书写在变量之前,表示先使用变量,然后再自增。

例如:

/** 程序名:book.c,此程序用于演示自增运算符++。* 作者:C语言技术网(www.freecplus.net) 日期:20190525。
*/
#include "stdio.h"int main()
{int i,j;i=10;j=i++;printf("j=%d\n",j);  // 输出j=10i=10;j=++i;printf("j=%d\n",j);  // 输出j=11
}

在以上示例中:

自减运算符–的原理和用法与自增运算符++相同,就不再介绍了。

3、获取视频教程

百万年薪程序员录制,《C/C++高性能服务开发基础》视频教程已在CSDN学院发布,优惠价12元,地址如下:
https://edu.csdn.net/course/play/29402

4、版权声明

C语言技术网原创文章,转载请说明文章的来源、作者和原文的链接。

来源:C语言技术网(www.freecplus.net)

作者:码农有道

如果这篇文章对您有帮助,请点赞支持,或在您的博客中转发此文,让更多的人可以看到它,谢谢!!!

C语言i++和++i的区别和用法相关推荐

  1. C语言 #define 与 typedef 的区别

    C语言 #define 与 typedef 的区别与用法 (qq.com) 在C语言编程中,typedef 和 #define是最常用语句,可能很多工作过几年的工程师都没有去深究过它们的一些用法和区别 ...

  2. C语言 memcpy 和 strcpy 函数区别 - C语言零基础入门教程

    目录 一.memcpy 函数/strcpy 函数简介 二.memcpy 函数/strcpy 函数实战 1.strcpy 函数属于字符串拷贝 2.memcpy 函数属于内存拷贝 三.猜你喜欢 零基础 C ...

  3. C语言 sizeof 和 strlen 函数区别 - C语言零基础入门教程

    目录 一.sizeof 函数与 strlen 函数区别 1.获取字符串长度 – 针对字符串 2.获取指针/数组长度 – 针对指针/数组 3.sizeof 获取内存大小 4.经典案例 二.猜你喜欢 零基 ...

  4. C语言 strcpy 和 strcpy_s 函数区别 - C语言零基础入门教程

    目录 一.strcpy_s 函数/strcpy 函数简介 1.strcpy 函数语法 2.strcpy_s 函数语法 二.strcpy/strcpy_s 函数实战 三.猜你喜欢 零基础 C/C++ 学 ...

  5. C、C++、C#、Java、php、python语言的内在特性及区别

    C.C++.C#.Java.PHP.Python语言的内在特性及区别: C语言,它既有高级语言的特点,又具有汇编语言的特点,它是结构式语言.C语言应用指针:可以直接进行靠近硬件的操作,但是C的指针操作 ...

  6. 理解GO语言make 和 new 的区别

    new 和 make 都可以用来分配空间,初始化类型,但是它们确有不同. 函数原型 new 是内建函数,函数原型为: func new(Type) *Type make 也是内建函数,它的函数原型 比 ...

  7. ios的开发语言是c,iOS应用开发语言C++和C的区别

    在iOS应用开发过程中,我们会用到C语言和C++,他们之间有什么关系?如何区别?各自承担开发语言中的什么作用?这里达内ios培训技术专家给我们做了如下总结. C++是C语言的一个子集,是C语言的进一步 ...

  8. C语言double与float的区别以及输出时的小数点的数位控制

    C语言double与float的区别 float : 单精度浮点数.                double : 双精度浮点数. 两者的主要区别如下: 一.在内存中占有的字节数不同 单精度浮点数在 ...

  9. go语言协程和线程区别

    go语言协程和线程区别 一.线程和协程区别 主线程是一个物理线程,直接作用在 cpu 上的.是重量级的,非常耗费 cpu 资源. Go 主线程(/也可以理解成进程)一个 Go 线程上,可以起多个协程. ...

最新文章

  1. 查询各个年级的平均分_二年级数学:期中考试前精心准备一下,会有意想不到的收获哦!...
  2. C语言数组清空的几种方法比较
  3. java map转string_【库学科技】32道常见的Java基础面试题
  4. Game(HDU-6669)
  5. html5获取地理位置信息API
  6. mongodb java and or,【MongoDB】-Java实现对mongodb的And、Or、In操作
  7. Palo Alto Networks下一代安全平台五大创新功能:云安全为重中之重
  8. pfSesne 使用IPv6与隧道代理
  9. springboot启动的时候运行一些代码
  10. docker安装jdk1.8
  11. Linux7 下Hadoop集群用户管理方案之五 安装Hadoop集群遇到的坑
  12. Linux unison 效率,Linux中inotify+unison实现数据双向(多向)实时同步
  13. 服务器文件系统报错处理办法
  14. 【java毕业设计】基于javaEE+SSM+MySql的个人博客系统设计与实现(毕业论文+程序源码)——个人博客系统
  15. ubuntu如何安装java jdk,Ubuntu下安装JDK图文详解
  16. 利用JS来设计夜场的倒计时以及进入页面
  17. cisp-信息安全保障
  18. JS作用域和自由变量
  19. jav 中 this和super
  20. LINUX选定区域截图

热门文章

  1. python简笔画程序_使用python turtle绘制简笔画大白
  2. Python+pandas+matplotlib控制不同曲线的属性
  3. Python+django网页设计入门(8):网站项目文件夹布局
  4. php memcached 例子,php下Memcached入门实例解析
  5. 多域名linux面板,宝塔面板操作多个域名做301跳转
  6. 策略模式应用场景_朱迪 | 混合研究方法的方法论、研究策略及应用:以消费模式研究为例...
  7. java安装_JAVA 安装
  8. os系统配置php环境,mac OS环境下的PHP环境配置
  9. java tree类子项的添加和删除_Java学习2-23 JTree节点的删除与添加(来源网上)
  10. C# 联合查询_c# 之linq——小白入门级