首页 > 其他分享 >C语言运算符和表达式——增1和减1运算符

C语言运算符和表达式——增1和减1运算符

时间:2024-03-29 13:29:06浏览次数:16  
标签:前缀 ++ C语言 运算符 后缀 -- 表达式

目录

增1和减1运算符

一元运算符

前缀增1/减1运算符

后缀增1/减1运算符

前缀与后缀对变量和表达式的影响

稍微复杂一点的例子

增1和减1运算符的优缺点


增1和减1运算符

增1运算符(Increment)++

*使变量的值增加1个单位

减1运算符(Decrement)--

*使变量的值减少1个单位

注意:操作数只能是变量,不能是表达式,自增自减运算

一元运算符

*前缀(prefix)

 ++n  → n=n+1

  --n  → n=n-1

*后缀(Postfix)

 n++ →n=n+1

 n-- →n=n-1

前缀增1/减1运算符

作为前缀(prefix)运算符时

*++n,--n

*先对n增1/减1,然后再使用n的值

注:用增1和减1运算生成的代码运行速度更快

后缀增1/减1运算符

作为后缀(postfix)运算符时

*n++,n--

*先使用n的值,然后再对n增1/减1

前缀与后缀对变量和表达式的影响

注:操作数的值是相同的,但表达式的值是不同的

稍微复杂一点的例子

我们来看以下片段:

增1和减1运算符的优缺点

优点:

*增1和减1运算生成的代码效率更高一些

问题:过多的增1和减1运算混合会产生什么结果?

*可读性差,例如(++n)+(++n),(n++)+(n++)

*不同编译器产生的运行结果不同

良好的程序设计风格提倡

*在一行语句中,一个变量只出现一次增1或减1运算

标签:前缀,++,C语言,运算符,后缀,--,表达式
From: https://blog.csdn.net/hangweijie/article/details/137141983

相关文章

  • notepad++ 利用正则表达式批量删除关键词所在行
    摘要平时使用notepad++查看文本文档,或者打开日志文件,总有一些不太关心的信息需要去除,基于这种情况,notepad++支持正则表达式,便有了操作空间。正则表达式查找使用正则表达式#匹配指定关键字所在的整行^.*关键字.*\r?\n示例:匹配包含"info"的行^.*info.*\r?\n具体步骤使用......
  • 程序与用户交互&基本运算符
    目的与程序之间交流输入输出如何交互输入:input弹出输入框:input()弹出提示信息:input("pleaseinput:")弹出提示信息,并返回:user=input("....:"),print(user)注意点:输入的内容永远是字符串,需要强制转化为所需要类型。代码num1=input("pleaseinput:")num2=in......
  • Java实现的表达式求值算法(包括加减乘除以及括号运算)
    packagecom.example.demo.java;importcom.greenpineyu.fel.FelEngine;importcom.greenpineyu.fel.FelEngineImpl;importjava.math.BigDecimal;importjava.util.HashMap;importjava.util.Map;importjava.util.Stack;importjava.util.regex.Matcher;impor......
  • c语言例题,判断闰年
    首先,我们要判断闰年,去写判断闰年的函数,那我们要先知道闰年是如何判断的。普通闰年的判断,一般是公历年份是4的倍数,且不是100的倍数的,以及公历年份是整百数的且必须是400的倍数的才是闰年。根据这些闰年的信息,我们可以构想,那闰年的判断方法就是:闰年必须是能被4整除,并且不能被100......
  • c语言例题,逐个打印数字
    今天来分享个比较简单的程序例题,也是比较经典的一个新手例题,逐个打印输入的数字。我们直接从主函数看起,先定义一个num变量,同时变量的类型是unsignedint,这个类型的意思是无符号的整型变量,unsigned(无符号)是用来修饰int的,说明了num这个变量只能是正数,然后我们用scanf输入想要的数......
  • OGNL表达式注入分析
    OGNL基础依赖<dependency> <groupId>ognl</groupId> <artifactId>ognl</artifactId> <version>3.1.19</version></dependency>OGNL三要素Expression表达式root根对象、即操作对象context上下文,用于保存对象运行的属性及值,有点类似运行环境的意思,保存了环境变量看个......
  • 新手c语言笔记
    第1章认识C语言C语言是国际流行的使用最广泛的感激程序设计语言。它既可以用来写系统软件,也可以用来写应用软件。1.1C语言的特点(1)c语言简洁紧凑,编写的程序短小精悍。(2)运算符丰富,数据结构丰富。c语言程序生成代码的质量较高,程序执行效率高。(3)C语言限制不太严格,程序设计自......
  • JAVA8-Lambda表达式
    Lambda表达式是Java8中引入的一项特性,它提供了一种简洁的方法来表示只有一个方法的接口(即函数式接口)的实例。Lambda表达式通常用于创建匿名方法。这种表达式是函数式编程的核心,允许开发者写出更简洁、更灵活的代码。Lambda表达式的结构Lambda表达式的一般形式是(参数列......
  • C语言文件操作
    前言我们先假设想一下如果没有文件,我们写的程序的数据是存储在电脑的内存中,如果程序退出,内存回收,数据就丢失了,等再次运行程序,是看不到上次程序的数据的,如果要将数据进行持久化的保存,我们可以使用文件,本篇就来探讨一下C语言有关文件的操作。个人主页:小张同学zkf若有问题 ......
  • c语言程序实验——实验报告三
    c语言程序实验——实验报告三实验项目名称:实验报告3简单顺序程序设计实验项目类型:验证性实验日期:2024年3月28日一、实验目的1、学会准确使用c语言的数据输入与函数输出2、能编写简单顺序结构程序二、实验硬、软件环境Windows计算机、Devc6.0三、实验内容:编写程序:(1......