C语言中自增自减运算符的深入剖析
李文广 李俊荣 赵妍 。
(1.沧州职业技术学院,2沧州工贸学校)
【摘要】本文从多方面对自增自减运算符分析、讲解,以便让初学者
能够清晰自增自减运算符的运算规律,学会其灵活的用法,扫清学
习C语言的一个障碍。
【关键词】C语言,运算符,自增自减,结合性
在众多的计算机程序设计语言中,C语言以其灵活性和实用
性受到广大计算机应用人员的喜爱,并且也成为许多高职院校计
算机专业类学生的必修课程。c语言中自增 自减运算符由于使用
非常灵活,成为了初学者学习 C语言的难点之一。下面我从几个
方面来剖析一下 自增 自减运算符的应用。
1自增自减运算符基本应用
C语言中提供了自增(++)、自减 (一)运算符。它们 的作用是使
被操作变量值增加 1或减少 l。
自增 (自减)运算符写在变量的前面称为前置自增 (减),如
++i,~i,写在变量的后面称为后置 自增 (减),如 i++,i__。
1)前置自增(自减):变量 i先自增(自减)1,然后再使用变化
后 i的值
2)后置自增(自减):先使用变化前变量 i的值,然后 i再自增
(自减)1。
例一:int i=3,j=3:
i++:++j:
printf( %d,%d\n ,i,j): .
结果:4,4。若第 2行语句改成自减语句 i一:和 __j:其结果:
2,2。
2自增自减运算符的实战应用
2.1在赋值语句中的应用
赋值语句中,前置式 自增 自减,先进行 自增 自减运算,再进行
其它运算;后置式,先进行其它运算,后进行自增 自减运算。
例二:int i=3,j=3,a,b:a=++i;b=j+ :
printf( %d,%d,%d,%d\n ,a,b,i,j);
结果:4,3,4,4。若第 2行语句改成 自减语句 a— i:b=j__:其
结果:2,3,2,2。
分析:“++前置”:i自增 1后变为 4再参与赋值运算,则 a=4,
i=4;“q-+后置”:j先参与赋值运算,把 3赋值给 b后,j的值再 白增
1变为 4,则是 b=3,j=4。
2.2在循环结构中的应用
C语言程序设计提供了三种循环:for循环、while循环、do⋯
while循环。
在 for循环中 for语句最简单的应用形式也可理解为如下形
式:for(循环变量赋初值;循环条件;循环变量增值){)
其中循环变量增值语句一般用自增(自减)运算符来实现。如
“i++”或“i一”,其中 i称为循环变量。循环中一般只注重循环变量
的值,而不注重循环变量所在表达式的值,所以自增(自减)的前置
和后置作用相同。
例三:int sum=O,i=O:
for(:i<=100:i++)
stlm=stlnl+i:
分析:循环结构中的i++作用:通过循环变量不断加1,使循环
条件趋于不满足。
在 while和 d0⋯while结构中,自增 自减运算符一般放于循
环体中。
2.3在函数调用中的应用
若 自增 自减运算符用于函数实参表达式,则函数执行过程是
将实参表达式值按照从右至左的顺序入栈,入栈前就将实参表达
式的值计算完毕。因此,如果函数有多个参数,则它们是按照从右
至左的顺序计算。
例四:mul(int a,int b)
{printf( %d\n ,a袖):)
main0
{int i=3:mul(i,++i):)
结果:16。
分析:在调用语句 mul(i,++i)中,按从右至