增值和减值操作符

✍ dations ◷ 2025-12-09 16:00:55 #计算机科学

在多数指令式编程语言中,增值和减值操作符指的是一类单目操作符,这些操作符相应地增加或减少其操作数的值。以C语言为例,“++”“--”操作符分别为增值操作符和减值操作符。

增值和减值操作符的操作数可以为整型、字符或者指针等,准确地说,这些操作符只要求其操作数必须为一个左值,也就是要求操作数必须为一个可以用在赋值符号“=”左边的表达式。

  int i = 1;      //运行完这条语句,i被赋值为1  int j = ++i;    //运行完这条语句,i的值增了1变为2,而j的值为“++i”这个表达式的值为2  --j;            //运行完这条语句,j的值减了1变为1,表达式“--j”的值为1但被抛弃
  • 后缀形式的++和--操作符。后缀形式的++和--操作符出现在操作数的后面,应用了这种形式后,操作数本身会相应的增加或减少。同时,表达式的值为操作数增加或减少前的值。用法如下所示:
  int i = 5;      //运行完这条语句,i被赋值为5  int j = i++;    //运行完这条语句,i的值增了1变为6,而j的值为“i++”这个表达式的值为5  j--;            //运行完这条语句,j的值减了1变为4,表达式“j--”的值为5但被抛弃

原理(C语言)

对一个操作数应用增值或减值操作符,抽象来说将会创建一份操作数的拷贝,而创建拷贝的时间则根据操作符是前缀形式还是后缀形式来决定。所以使用这种操作符的表达式,实际用到的正是这份拷贝而不是操作数本身。所以编译器并不允许如i++ = 2;这样的语句出现。

相关

  • 血压反射血压反射(英语:baroreflex、日语:血壓反射機能)或血管压力感受器反射(英语:baroreceptor reflex)是身体内的其中一种生命征象恒定机制,功能是确保体内的血压长时间维持在稳定的区间,
  • 液态氮液态氮(常写为LN2)是指惰性、无色、无嗅、无腐蚀性、不可燃的氮气在温度极低的环境下而得到的液体,是氮气在低温下形成的液体形态。氮的沸点为−195.79 °C(77 K),在正常大气压下
  • 文森城堡文森城堡(法语:Château de Vincennes)坐落于法国法兰西岛大区马恩河谷省(94省)文森市(巴黎东边),位于巴黎地铁1号线终点站。文森城堡建于1337年至1373年,曾是法国非常重要的皇家军事
  • 原胞在几何,固体物理和矿物学上,特别是描述晶体结构时,原胞即为具有2维、3维或者其他维度平移对称性的简单点阵结构的最小单元。 我们可以用晶格原胞的几何结构来对晶格进行分类。
  • 姑母姑母是中文中亲属称谓,指父亲的姐姐或妹妹,或可简称姑。她们的丈夫则称为姑父、姑爹、姑丈等。粤语称父亲的姐姐为姑妈、妹妹为姑姐。自己相对于姑母而言是侄儿或侄女。英文中
  • 毛毛虫毛虫也叫毛毛虫,是鳞翅目昆虫(蝴蝶或蛾)的幼虫。虽然它们称为“毛虫”,但不是每个种的毛虫都有毛。有些表面光滑,也有些长有肉角,还有些长有臭角。毛虫有三对前足,腹部和尾部大多有
  • 乔治·泰勒乔治·泰勒(英语:George Taylor)可以指:
  • 海南沿海诸河海南河流,指海南省的河流,主要集中在海南岛。由于海南岛地势中部高四周低,较大河流多发源于中部山区,形成辐射状水系。全岛独流入海的河流共有154条,其中集水区面积超过100平方公
  • 夏季奥林匹克运动会羽毛球比赛夏季奥林匹克运动会的羽毛球比赛在1988年汉城奥运会首度成为奥运表演项目,并在1992年巴塞罗那奥运会成为正式比赛项目,但当时并没有混合双打的赛事,1996年亚特兰大奥运会才开始
  • 硝化系统硝化系统指利用硝化细菌的硝化反应,将氨和铵离子硝化为亚硝酸盐和硝酸盐的生化反应系统,多用于水族箱中。硝化系统可以用来除去生物代谢产生的有害的氨和铵离子,将其转化为低害