C语言的根基运算符和表达式
副标题#e#
C语言运算符的种类、优先级和团结性
C语言中运算符和表达式数量之多, 在高级语言中是少见的。正是富厚 的运算符和表达式使C语言成果十分完善。 这也是C语言的主要特点之一。
C语言的运算符不只具有差异的优先级 , 并且尚有一个特点,就是它的团结性。在表达式中, 各运算量参加运算的先后顺序不只要遵守运算符优先级此外规 定,还要受运算符团结性的制约, 以便确定是自左向右举办运算照旧自右向左举办运算。 这种团结性是其它高级语言 的运算符所没有的,因此也增加了C语言的巨大性。
运算符的种类C语言的运算符可分为以下几类:
1.算术 运算符
用于种种数值运算。包罗加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、自增(++)、自减(–)共七种 。
2.干系运算符
用于较量运算。包罗大于(>)、小于(<)、便是(==)、 大于便是(>=)、小于便是(<=) 和不便是(!=)六种。
3.逻辑运算符
用于逻辑运算。包罗与(&&)、或(||)、非(!)三种。
4.位操纵运算 符
参加运算的量,按二进制位举办运算。包罗位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移 (>>)六种。
5.赋值运算符
用于赋值运算,分为简朴赋值(=)、复合算术赋值(+=,-=,*=,/=,%=)和复合位运算 赋值(&=,|=,^=,>>=,<<=)三类共十一种。
6.条件运算符
这是一个三目运算符,用于条件求值 (?:)。
7.逗号运算符
用于把若干表达式组合成一个表达式(,)。
8.指针运算符
用于取内容(*)和取地点 (&)二种运算。
9.求字节数运算符
用于计较数据范例所占的字节数(sizeof)。
10.非凡运算符
有括号() ,下标[],成员(→,.)等几种。
#p#副标题#e#
C语言运算符的优先级和团结性
C语言中,运算符的运算优先级共分为15级。1级最高,15 级最低。在表达式中,优先级较高的先于优先级较低的举办运算。 而在一个运算量两侧的运算符优先级沟通时, 则按 运算符的团结性所划定的团结偏向处理惩罚。 C语言中各运算符的团结性分为两种,即左团结性(自左至右)和右团结性(自 右至左)。譬喻算术运算符的团结性是自左至右,即先左后右。如有表达式x-y+z则y应先与“-”号团结, 执行x-y运算 ,然后再执行+z的运算。这种自左至右的团结偏向就称为“左团结性”。而自右至左的团结偏向称为“右团结性”。 最 典范的右团结性运算符是赋值运算符。如x=y=z,由于“=”的右团结性,应先执行y=z再执行x=(y=z)运算。 C语言运算 符中有不少为右团结性,应留意区别,以制止领略错误。
算术运算符和算术表达式根基的算术运算符
1.加法 运算符“+”加法运算符为双目运算符,即应有两个量参加加法运算。如a+b,4+8等。具有右团结性。
2.减法运算符“ -”减法运算符为双目运算符。但“-”也可作负值运算符,此时为单目运算,如-x,-5等具有左团结性。
3.乘法运算 符“*”双目运算,具有左团结性。
4.除法运算符“/”双目运算具有左团结性。参加运算量均为整型时, 功效也为 整型,舍去小数。假如运算量中有一个是实型,则功效为双精度实型。
双目运算具有左团结性。参加运算量均为整型 时, 功效也为整型,舍去小数。假如运算量中有一个是实型,则功效为双精度实型。
5.求余运算符(模运算符)“%” 双目运算,具有左团结性。要求参加运算的量均为整型。 求余运算的功效便是两数相除后的余数。
双目运算,具有 左团结性。求余运算符% 要求参加运算的量均为整型。本例输出100除以3所得的余数1。
。
查察本栏目
C的数据 范例
根基范例,结构范例,指针范例,空范例
根基范例的分类及特点
范例说明符 字节 数值范畴
字符型char 1 C字符集
根基整型int 2 -32768~32767
短整型short int 2 -32768~32767
长整型 long int 4 -214783648~214783647
无标记型 unsigned 2 0~65535
无标记长整型 unsigned long 4 0~4294967295
单精度实型 float 4 3/4E-38~3/4E+38
双精度实型 double 8 1/7E-308~1/7E+308
3.常量后缀
L或l 长整型
U或u 无标记数
F或f 浮点数
4.常量范例
整数,长整数,无标记数,浮点数,字符,字符串,标记常数,转义字符。
5.数据范例转换
·自动转换
#p#分页标题#e#
在 差异范例数据的殽杂运算中,由系统自动实现转换, 由少字节范例向多字节范例转换。 差异范例的量彼此赋值时也由 系统自动举办转换,把赋值号右边的范例转换为左边的范例。
·强制转换
由强制转换运算符完成转换。
6.运算 符优先级和团结性
一般而言,单目运算符优先级较高,赋值运算符优先级低。 算术运算符优先级较高,干系和逻辑 运算符优先级较低。 大都运算符具有左团结性,单目运算符、三目运算符、 赋值
7.表达式
表达式是由运算符连 接常量、变量、函数所构成的式子。 每个表达式都有一个值和范例。 表达式求值按运算符的优先级和团结性所划定的 顺序举办。