首页 理论教育C语言程序设计实用教程-自增自减运算符及表达式

C语言程序设计实用教程-自增自减运算符及表达式

【摘要】:自增、自减运算符是C 语言中最具特色的两个单目运算符,其操作对象只有一个,这两个运算符既可以放在操作数之前,也可以放在操作数之后。自增、自减运算符的结合方向为自右至左。

自增、自减运算符是C 语言中最具特色的两个单目运算符,其操作对象只有一个,这两个运算符既可以放在操作数之前,也可以放在操作数之后。它们的功能是自动将运算对象增1或减1,然后把运算结果回存到运算对象中。

自增、自减运算符用法如下:

(1)前置运算,即运算符放在变量之前,++变量、--变量,如++i; --j。前置运算先使变量的值增1(或减1),然后再以变化后的值参与其他运算,即先自增(减)后运算。

(2)后置运算,即运算符放在变量之后,变量++、变量--,如 i++;j--。后置运算先使变量参与运算,然后再使变量的值增(或减)1,即先运算后增(减)值。

++为自增运算符,如a++、++a 都等价于a=a+1。--为自减运算符,如a--、--a 都等价于a=a-1。

例如:使用自增、自减运算符时,需要注意以下几点:

(1)自增、自减运算符只能用于变量,不能用于常量或是表达式。(www.chuimin.cn)

(2)自增、自减运算符的结合方向为自右至左。例如,有表达式-i++,其中i 值为2。由于负号运算符与自增运算符优先级相同,但结合方向是自右至左,即相当于-(i++)。此时++属于后缀运算符,表达式的值为-2,i 的值为3。

(3)自增、自减运算符常用于循环语句中,使循环变量自动加1 或减1。也用于指针变量,使指针指向下一个地址

【例2.5】已知float x=2,y;,则y=x++*x++的结果为( )。

分析:

该例题中,要计算变量y 的值,y=x++*x++,表达式中含运算符自增运算符(++)、乘法运算符(*),从运算符表中可以看出,自增运算符优先级高于乘法运算符,所以先算自增运算。但自增运算在表达式中是后置自增,即先将变量值代入表达式中计算,后给变量自增值。所以变量y 的值为4.0。

读者可上机验证该题目,深入理解自增运算符的应用。