增值和减值操作符

✍ dations ◷ 2025-07-07 07:21:09 #计算机科学

在多数指令式编程语言中,增值和减值操作符指的是一类单目操作符,这些操作符相应地增加或减少其操作数的值。以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;这样的语句出现。

相关

  • 利多卡因利多卡因(英语:Lidocaine)又称为苦息乐卡因(英语:xylocaine)或里格卡因(英语:lignocaine),为一种局部麻醉药且可用于治疗室性心动过速(英语:ventricular tachycardia)。它可被用于神经传
  • D-葡萄糖醛酸葡糖醛酸(Glucuronic acid),又称葡萄糖醛酸,是葡萄糖的 C-6 羟基被氧化为羧基形成的糖醛酸。D-葡糖醛酸一般不以游离的形式存在,因为该形式不稳定,而是以更稳定的呋喃环的 3,6-内
  • 维尔特二号维尔特二号彗星(官方标记为81P/Wild)是一颗由瑞士天文学家保罗·维尔特于1978年发现的彗星。据信在它45亿年的生命里,维尔特2号可能曾有更远和圆的轨道。1974年它在距离行星木
  • 环加成环加成反应(英文:Cycloaddition)是两个或多个不饱和化合物(或同一化合物的不同部分)结合生成环状化合物,并伴随有系统总键级数减少的化学反应。它可以是周环反应或非协同的分步反
  • 奇电子分子奇电子分子是指中心原子价层电子数为奇数的分子,它们通常用两种方式来使自身稳定。首先是成键轨道或非键轨道未填满,例如氢分子离子H2+、二氧化氮可以形成单电子键、三电子键
  • 韩国流行文化韩国文化,为大韩民国的文化,由韩国传统文化衍生而来,1948年朝鲜半岛南北对峙以来,南北韩的现代文化出现不同的发展。韩国现代文化是韩国现代化的产物。随着韩国经济和社会的发展
  • 花莲县长花莲县县长为中华民国台湾省花莲县的最高行政首长,连选得连任一次 。现任县长为中国国民党党籍的徐榛蔚。本条目列出历任的花莲县县长。台湾省政府指派首任女性县长。
  • 圣伯纳丁县圣贝纳迪诺县(英文:San Bernardino County)是美国加利福尼亚州东南部的一个县,东邻内华达州和亚利桑那州,东界科罗拉多河。面积52,073平方公里,是美国本土面积最大的县(排除被称为
  • 2000年美国人口普查第22次美国人口普查是由美国人口调查局进行的。通过普查,美国截至2000年4月1日共有居民281,421,906人,比1990年人口普查时的248,709,873人增加13.2%。美国的居民人口包括50个
  • 国际山岳联盟国际山岳联盟(Union Internationale des Associations d'Alpinisme,UIAA)是一个成立于1932年,专门管辖国际登山运动事务的组织。目前,该组织约有60个成员国加盟,其总部设在瑞士伯