深度剖析C语言自增自减运算
2012-07-25 21:05
302 查看
在C语言的学习中大家都会遇到C语言的自增自减运算,很多人多对其运算赶到迷惑,下面通过简单的几分钟的分析让你对自增自减运算了如指掌,不再迷惑。
自增运算符就是++,自减就是--,两个运算相同以自增为例。
自增分为前增运算符和后增运算符,前增就是在计算一个式子之前线对具有前增运算符的变量进行加一,注意是在一个式子计算之前就对变量加一,不管表达式里面有几个几百个括号啥的,不管,看完表达式发现有前增运算符的变量,全部加一,然后再看。后增运算符是在式子计算完成之后,数一下,每个变量有几个后增运算符,就加几就行啦。
比如x=1;c=2;d=3;y=((x++)+(++x))+(++c)+(d++);
发现有一个x的前增运算符则对x加一变成2,c有一个前增运算符,c变为3,这样y=((2)+(2))+(3)+(3)=10,然后计算变量的值,发现x有一个后增运算符,d有一个后增运算符,因此最后,x=3,c=3,d=4;
自减运算符和自增的运算是一样。
总的来说计算带有自增自减运算符的表达式分为三步:
1、查看式子中所有带有前增或者前减运算符的变量,先把他们的值进行变化。
2、计算表达式的值(不用理会后增后减运算符)
3、看所有具有就有后增后减运算符的变量,每个变量具有几个后增后减运算符就进行相应的变化。
注意:上面的运算顺序是针对变量是整形的即int,如果变量是浮点型则对表达式从右到做依次计算。
比如:float a=1.0;y=(x++)+(++x)+(x++);
计算顺序为:
1、x++,则先取x=1.0,然后x加一,x变为2.0;
2、++x,先将x加一的3.0,取x=3.0进行计算;
3、x++,先取x=3.0进行计算,然后x加一;
因此最后y=1.0+3.0+3.0=7.0,x为4.0.
自增运算符就是++,自减就是--,两个运算相同以自增为例。
自增分为前增运算符和后增运算符,前增就是在计算一个式子之前线对具有前增运算符的变量进行加一,注意是在一个式子计算之前就对变量加一,不管表达式里面有几个几百个括号啥的,不管,看完表达式发现有前增运算符的变量,全部加一,然后再看。后增运算符是在式子计算完成之后,数一下,每个变量有几个后增运算符,就加几就行啦。
比如x=1;c=2;d=3;y=((x++)+(++x))+(++c)+(d++);
发现有一个x的前增运算符则对x加一变成2,c有一个前增运算符,c变为3,这样y=((2)+(2))+(3)+(3)=10,然后计算变量的值,发现x有一个后增运算符,d有一个后增运算符,因此最后,x=3,c=3,d=4;
自减运算符和自增的运算是一样。
总的来说计算带有自增自减运算符的表达式分为三步:
1、查看式子中所有带有前增或者前减运算符的变量,先把他们的值进行变化。
2、计算表达式的值(不用理会后增后减运算符)
3、看所有具有就有后增后减运算符的变量,每个变量具有几个后增后减运算符就进行相应的变化。
注意:上面的运算顺序是针对变量是整形的即int,如果变量是浮点型则对表达式从右到做依次计算。
比如:float a=1.0;y=(x++)+(++x)+(x++);
计算顺序为:
1、x++,则先取x=1.0,然后x加一,x变为2.0;
2、++x,先将x加一的3.0,取x=3.0进行计算;
3、x++,先取x=3.0进行计算,然后x加一;
因此最后y=1.0+3.0+3.0=7.0,x为4.0.
相关文章推荐
- C语言深度剖析学习错误点记录
- 3.读c语言深度剖析 -- 单引号与双引号、逻辑运算符、位运算符、花括号
- struct关键字---C语言深度剖析读书笔记9
- 读c语言深度剖析 -- typedef小结
- 读c语言深度剖析 -- auto register static sizeof signed、unsigned
- 读c语言深度剖析 -- switch case
- 读c语言深度剖析 -- typedef小结(1)
- C语言深度剖析-----函数
- C语言深度剖析-----最终的胜利
- 4.读c语言深度剖析 -- 宏定义(1)
- 读c语言深度剖析 -- typedef小结(2)
- [学习笔记]C语言深度剖析
- C语言深度剖析--读书笔记1_定义和声明
- 5.读c语言深度剖析 -- 符号 注释符号
- 6.读c语言深度剖析 -- 第一章 关键字(32个)
- c语言深度剖析之—关键字
- 读c语言深度剖析 -- typedef小结(3) 定义结构体
- C语言深度剖析自测题8解析
- C语言深度剖析笔记(2)
- C语言深度剖析--读书笔记2_static关键字