

运算符和表达式web

运算符: 描述各类操做的符号。数组
表达式:用运算符将操做对象链接成符合C语言语法的式子。微信


C语言中的运算符很是丰富,主要包括:编辑器
算术运算符:+、-、*、/、%、++、- -函数
关系运算符:>、>=、<、<=、==、!=学习
逻辑运算符:!、&&、||flex
位运算符:<<、>>、~、^、&、|url
赋值运算符:=、复合赋值运算符spa
条件运算符: ? :.net
逗号运算符: ,
指针运算符:&、 *
求字节数运算符:sizeof
强制类型转换运算符:(类型关键字)
份量运算符:->、.
数组下标运算符:[ ]
其余运算符:括号()、函数调用等
学习运算符不须要死记硬背,伴随各章节的学习逐个掌握便可
使用运算符时,须要考虑运算符的如下特征:
(1) 运算符链接的运算对象的个数
若是一个运算符只能对一个运算对象进行运算,则称为单目运算符。依次类推,能够链接两个运算对象的称为双目运算符,链接三个运算对象的称为三目运算符。
(2) 运算符的优先级
当一个表达式中同时出现多个运算符时,优先级决定了运算的前后次序。C语言对其种类繁多的运算符共规定了15个级别的优先级。
(3) 运算符的结合性
结合性分为“左结合”和“右结合”两种,左结合是指优先级相同的运算符按从左到右的顺序运算,右结合是从右到左运算。

基本算术运算符

C语言提供5个基本算术运算符和两个单目的正、负运算符
算术表达式:
由算术运算符、常数、变量、函数和圆括号组成。
例如:‘a’+ ‘b’+ a*b/c +2.8
(1) 优先级:* / % 高于 + -
(2) 结合性:“左结合性”或称为“自左至右的结合方向”即运算对象先与左边的运算符结合。
例如:a - b + c
注意: /是除法运算符,当两个整数相除时为整除,即商为整。
例如: 9/2=4; -9/2=-4;(如有一个是负数,采起向零取整)
%是取余数运算符,只能做用于两个整数。运算结果的符号与被除数的符号一致。
例如: 9%2=1 ; -9%2=-1 ; 9%-2=1;

赋值运算符和赋值表达式

1.通常赋值运算符: =
赋值表达式:由赋值运算符将一个变量和一个表达式链接起来的式子。
形式:变量名=常量或表达式
功能:将右边常量或表达式的值赋给左边的变量。
例:a=3; b=c+d ;
说明:
① 赋值后,原来左边的变量值被右边表达式的值替换;
② 若是右边表达式的值的类型与左边变量的类型不一致,以左边变量的类型为准,将表达式值的类型转换为左边变量的类型。
③ 结合方向“从右向左”。
例: x=y=a+b;
2.复合赋值运算符:在赋值符“=”以前加上其它运算符。
共有10种复合赋值运算符:
+= ,-=,*=,/=,%= (算术运算有关)
<<=,>>=, &=,^ =, |= (与位运算有关)

逗号运算符和逗号表达式

1.逗号运算符:即“,”
优先级:全部运算符中级别最低的运算符。
2.逗号表达式
形式:表达式1,表达式2,……,表达式n
求解过程:顺次求解表达式1,表达式2……
最后求解表达式n。
表达式值:逗号表达式的值为表达式n的值。
结合性:左结合
例如:
a=3*5,a*4 表达式的值60
a=3*5,a*4,a+5 表达式的值20
x=(a=4%3 , a+1, a*10) 表达式的值10

自增、自减运算符 (++、--)

做用:使变量的值增长1或减1,如:
++i,--i(使用以前,先使i的值加(减)1)
i++,i--(使用以后,使i的值加(减)1)
++i 先执行i=i+1,再使用i的值
i++ 先使用i的值,再执行i=i+1
例如:int a=1 , b; b=++a ; b=a++ ;
说明:
(1)++、- -为单目运算符
(2)++ 、- -只能用于变量,而不能用于常量或表达式。
例如:10++,(x+y)++, ++’a’, b++ 中合法的为:b++
(3)自增、自减运算符为右结合性(即自右至左)。
例如:-a++=-(a++)

sizeof运算符

sizeof运算符是C语言特有的一种运算符,其语法形式以下:
sizeof(运算对象)
该运算符的做用是得到运算对象占用内存空间的字节数,结果是整数类型。其中,运算对象能够是数据类型关键字、常量、变量和表达式。

本文分享自微信公众号 - 电子荣耀(gh_05453579ed9d)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。