c语言的部分总结之操作符

来源:互联网 发布:苹果电脑软件 编辑:程序博客网 时间:2024/05/21 18:37


C语言的部分总结之操作符

 一门语言的学习,首先我们应该了解其中的各种操作符。对于C语言而言,其常见的操作符包括:算数操作符、位操作符、移位操作符、赋值操作符、单目操作符、关系操作符、条件操作符、逗号操作符、下表引用、函数调用和结构成员。

 接下来,我将为小伙伴们依次分析以上的各种C语言操作符:

1.算数操作符:(+ ,- ,* ,/ ,% )

   1.)% 操作符左右俩边必须为整数,不能为浮点数;

   2.)/ 操作符进行计算时,结果随左右俩边的数据类型的变化而变化,若左右俩边数据类型均为int 类型,则计算结果必定为整型;若左右俩边至少有一边为fload类型,则计算结果必定为浮点型;

   3.)+ 、-、* 运算符进行计算时无特别之处,在此就不进行分析。2.移位操作符:<<   ,   >>

   1.)<< 操作符为左移操作符,每进行一次移位,左边丢弃,右边补0;

   2.)>> 操作符为右移操作符,右移可以分为算术右移and逻辑右移,算数右移:每进行一次移位,左边补位移之前的符号位,右边丢弃;逻辑右移:每进行一次移位,左边补0,右边丢弃。

   注:移位操作符是针对二进制位,是对整数的操作,浮点数不能进行唯一操作。

3.位操作符:& , | , ^

   1.)& 操作符为按位与,有0出0,全1出1;

   2.)| 操作符为按位或,有1出1,全0出0;

   3.)^ 操作符为按位异或,相同出0,相异出1.

   注:位操作符是针对二进制数的操作,必须为整数。

4.赋值操作符:=

   1.)= 操作符为赋值操作符,可以进行对一个变量进行复制,也可以对一个变量进行初始化;

   2.)= 操作符是可以连续使用的,从右向左执行(不建议使用)。

5.复合赋值号:+=  , -= ,*= ,/= ,%= ,>>=  , <<=  ,&= , |= ,^=

   1.)+= 操作符:a+=b相当于a=a+b;

   2.)-= 操作符: a-=b相当于a=a-b;

   3.)*= 操作符:a*=b 相当于a=a*b;

   4.)/= 操作符:a/=b 相当于a=a/b;

   5.)%= 操作符:a%=b相当于a=a%b;

   6.)>>= 操作符:a>>=b相当于a=a>>b;

   7.)<<= 操作符:a<<=b相当于a=a<<=b;

   8.)&= 操作符:a&=b相当于a=a&b;

   9.)|= 操作符:a|=b相当于a=a|b;

   10.)^= 操作符:a|=b相当于a=a^b.

6.单目操作符:!, - ,+ ,&,sizeof ,~,-- ,++ ,* ,(类型)

   1.)!操作符为逻辑取反操作(真变假,假变真);

   2.)- 负号    +正号

   3.)& 取地址(注:从内存中取地址,不能从寄存器register中取址。)

   4.)sizeof  求操作符的类型长度(以字节为单位),a 为int类型变量时,sizeof(a)和sizeof a 与sizeof (int)的值相当,都为int类型的类型长度;a 为数组时,sizeof(a)表示求整个数组的长度,sizeof(&a)表示求数组中一个 元素的长度;特别注意,sizeof(b=a+

   5.)中内部放的表达式不参与运算(b=a+5在编译期间已执行,那时变量a还未进行内存的开辟);

   6.) ~ 操作符为按位取反(针对一个数的二进制);

   7.) ++与-- 前置表示先执行后使用,++与-- 后置表示先使用后执行;

   8.)* 此处的操作符为解引用操作符(间接访问操作符);

   9.) (类型)操作符为强制类型转换。

7.关系操作符:>  ,  >=   ,<   , <=  ,!=  (不等于),  ==

  注:关系操作符较为简单,此处不作解释,有一点特别注意:==等于 与 =赋值,二者比较容易混淆。

  1. 逻辑操作符: &&  ,||  

       1.) &&操作符为逻辑与,假1为假,全真为真;

       2.) ||操作符为逻辑或,真1为真,全假为假。

       注:逻辑与、逻辑或和按位与、按位或的区别。

  2. 条件操作符(三目操作符):exp1?exp2:exp3

       注:先计算exp1的值,若exp1为真,整个表达式的值为表达式2(exp2)的值;若exp1为假,整个表达式的值为表达式3(exp3)的值。

  3. 下标引用、函数调用和结构成员:[]  ,()   ,struct

       1.) [] 操作符:一个数组名+一个索引值。(例如:a[1],数组a的第二个元素)

       2.) () 函数调用操作符:接受一个或多个操作符(第一个操作符就是函数名,其余的操作数是传给函数的参数);

       3. struct 操作数 ,进行一个生动的比喻,struct类型相当于盖房子的图纸,之后的变量相当于盖好的房子(访问一个结构的成员:结构体.结构成员)。

  4. 逗号表达式:exp1,exp2,exp3,…,expN

       注:从左往右依次执行,整个表达式的结果是最后一个表达式的结果。

       以上是C语言中的常用操作符,在此门语言中,还应该注意表达式求值(其顺序一部分是由操作符的优先级和结合性决定,其过程中有些需要进行类型转换)与复杂表达式的影响因素(操作符的优先级、操作符的结合性、求值顺序)。

    本次关于c语言的操作符总结就在此结束了,希望小伙伴们喜欢!

原创粉丝点击