C 自增自减运算符
在接下来的时间里面,我们准备为大家介绍"自增自减运算符 "。
(1)自增自减运算符的作用就是让变量的值可以增加1或减少1。
自增自减运算符的语法格式:
变量名++; //使用变量名之后,再对变量名中的值进行加1。
变量名- -; //使用变量名之后,再对变量名中的值进行减1。
例子:
int i = 0;
int j = -1;
j = i++;
例子分析:
(1)定义了整型变量 i 与 j ,初值分别是0和-1。
(2)然后,执行了j = i++ ,这种自增的语法格式是先使用变量名,即先将变量 i 中的值,
赋给变量 j ,所以,j 中的值由 -1 变为0,然后,再对变量 i 进行加1,所以,i 中的值
由0变为1。
++变量名; //使用变量名之前,先对变量名中的值进行加1。
- -变量名; //使用变量名之前,先对变量名中的值进行减1。
例子:
int i = 0;
int j = -1;
j = ++ i;
例子分析:
(1)定义了整型变量 i 与 j ,初值分别是0和-1。
(2)然后,执行了j = ++ i ,这种自增的语法格式是使用变量名前先对变量中值加1,
所以,i 中的值由0变为1。
然后,再把 i 中的值赋给变量 j ,这样,j 中的值就由-1变为1。
(2)自增自减运算符的特点:
1、只能用于变量,不能用于常量或表达式。
如:5++;//错误
(a+b)++;//错误
(-a)++; //错误,因为,-a是表达式
2、自增自减运算符的优先级高于“算术运算符”、“关系运算符”,但是与“负号”是同级。
如:
int i=8;
int j=0;
j = -i++; //先取出变量 i 中的值8与“负号”结合变为-8,然后,把-8赋给 j ,
这样,j 中的值就由0变为-8,
然后,再对 i 加1,等于9,所以,i 中的值就由8变为9。
j = -(i++);//同样,先取出变量 i 中的值8与“负号”结合变为-8,然后,把-8赋给 j ,
这样,j 中的值就由0变为-8,
然后,再对 i 加1,等于9,所以,i 中的值就由8变为9。
3、自增自减运算符可以用于指针变量,让其指向下一个地址或前一个地址。
如:
int num[3]={1,2,3}; //定义变量数组num
int *pnum = num; //定义整型指针变量pnum让其指向数组num的起始地址。
int d ;
d = *pnum; //取出pnum所指向的数组中的第一个元素的值,即1,并赋给变量d。
d中的值变为1。
d = *pnum++; //取出pnum中的数组起始地址,然后,让其与自增运算符先结合,
因为,自增运算符的优级高于星号“*”,
所以,地址加1后就指向数组中第2个元的地址,
然后,再与前面的星号“*”结合,取出第2个元素地址中的值,
即2,然后,再赋给变量d,这样,d中的值就由1变为2。
非常好,现在,我们已经掌握了C中的“强制类型转换运算符”这个知识点,但是,如何去运用它呢?所以,我们就要通过下方的按钮进入到游戏中,然后,运用该知识点去完成任务,这样,才可以加深大家对每个知识点的理解和运用,以及“尽快进入到编程的状态”。
不要停留在理论规则上面,快动起来吧!
(通过游戏模式学习与训练,需要在电脑上运行)