武汉理工大学计算机学院信息技术会00心00000000009000000计算机程序设计基础C语言主讲教师:李宁武汉理工大学Wuhan Universityof Technology
主讲教师:李宁
计算机程序设计基础C语言0自增和自减运算符武汉理工大学Wuhan Universityof Technology
计算机程序设计基础C语言
自增和自减运算符运算符名称表达式含义后置自增,使用a的值后,a的值增1a++自增运算符(单目++)前置自增,使用a的值前,a的值增1++a后置自减,使用a的值后,a的值减1a--自减运算符(单目)前置自减,使用a的值前,a的值减1--a
运算符 名 称 表达式 含 义 ++ 自增运算符(单目 ) a++ 后置自增,使用a的值后,a的值增1 ++a 前置自增,使用a的值前,a的值增1 - 自减运算符(单目 ) a- 后置自减,使用a的值后,a的值减1 -a 前置自减,使用a的值前,a的值减1
自增和自减运算符自增、自减运算符只能用于变量(最好不要用于实型变量)表达式+十x表示使用x的值之前,x的值自增1,表达式区十十表示使用x的值之后,x的值自增1。如:int i=3, x, y ;等同于x=ii=i+l;x=i++;355y=++i ;//等同于i=i+1;y=i;printf("%d %d %dn",x,Y,i);
◼ 自增、自减运算符只能用于变量(最好不要用于实型变量) ◼ 表达式++x表示使用x的值之前,x的值自增1, 表达式x++表示使用x的值之后,x的值自增1。 ◼ 如: int i=3, x, y ; x=i++; // 等同于x=i;i=i+1; y=++i; // 等同于i=i+1;y=i; printf(%d %d %d \n , x, y, i); 3 5 5
自增和自减运算符■指针变量p可以进行加减运算,p=p+1或p=p-1就可以看成指针变量的自增、自减运算。如:若有int al=3,a2=6,a3=9,*p=&a2;,a1,a2,a3的地址依次是65496,65500和65504。则:■表达式*(++p)的值是9,运算后p的值是65504,a1、a2、a3的值不变。表达式*(p++)的值是6,运算后p的值是65504,a1、a2、a3的值不变。表达式(*p)++的值是6,运算后p的值是65500,a2的值是7.表达式++(*p)的值是7,运算后p的值是65500,a2的值是7
指针变量p可以进行加减运算,p=p+1或p=p-1就可以看成指针变 量的自增、自减运算。 如:若有int a1=3,a2=6,a3=9, *p=&a2;, a1,a2,a3的地址依次是65496,65500和65504。 则: 表达式*(++p)的值是9,运算后p的值是65504,a1、a2、a3的 值不变。 表达式*(p++)的值是6,运算后p的值是65504,a1、a2、a3的 值不变。 表达式(*p)++的值是6,运算后p的值是65500, a2的值是7. 表达式++(*p)的值是7,运算后p的值是65500,a2的值是7