2011年计算机二级C语言精编教程第二章(7)

来源:计算机等级考试    发布时间:2012-08-28    计算机等级考试视频    评论

  2.7 自加、自减运算符和逗号运算符

  2.7.1 自加运算符“++”和自减运算符“--”

  (1)自加运算符“++”和自减运算符“--”的运算结果是使运算对象的值增1或减1。如i++,相当于i=i+1;i--,相当于i=i-1。因此,自加或自减运算本身也是一种赋值运算。

  (2)运算符“++”和“--”是单目运算符,运算对象可以是整型变量也可以是实型变量,但不能是常量或表达式。因为不能给常量或表达式赋值。因此,如++3,(i+j)--等都是不合法的。

  (3)用自加或自减运算符构成表达式时1既可以前缀形式出现,也可以后缀形式出现。例如:++i,--i,i++,i--等都是合法的表达式。无论是作为前缀运算符还是作为后级运算符,对于变量本身来说自增1或自减1都具有相同的效果,但作为表达式来说却有着不同的值。

  例如,若变量i为int类型,且已有值为5。若表达式为++i,则先进行i增1运算,i的值为6,表达式的值也为6;若表达式为--i,则先进行i减1运算,i的值为4,表达式的值也为4;若表达式为i++,则表达式先取i的值为5,然后i进行增1运算,使i中的值为6;若表达式为i--,则表达式先取i的值为5,然后i进行减1运算,使i中的值为4。

  (4)运算符“++”和“--”的结合方向是“自右至左”。

  例如有一表达式-i++,其中i的原值为3。由于负号运算符与自加运算符的优先级相同,结合方向是“自右至左”,即相当于对表达式-(i++)进行运算,此时自加运算符“++”为后缀运算符,(i++)的值为3,因此-(i++)的值为-3,然后i自增为4。

  (5)不要在一个表达式中对同一个变量进行多次诸如i++或++i等运算,例如写成:i++*++i+i--*--i,这种表达式不仅可读性差,而且不同的编译系统对这样的表达式将做不同的解释.进行不同的处理,因而所得结果也各不相同。

  2.7.2 逗号运算符和逗号表达式

  “,”是C语言提供的一种特殊运算符,用逗号将表达式连接起来的式子称为逗号表达式。逗号表达式的一般形式为:

  表达式1,表达式2,……,表达式n。

  说明:

  (1)逗号运算符的结合性为从左到右,因此逗号表达式将从左到右进行运算。即,先计算表达式1,然后计算表达式2,依次进行,最后计算表达式n。最后一个表达式的值就是此逗号表达式的值。例如:(i=3,i++,++i,i+5)这个逗号表达式的值是10,i的值为5。

  (2)在所有运算符中,逗号运算符的优先级最低。

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答