c语言操作符总共分为了十种,分别是算术操作符、移位操作符、位操作符、赋值操作符、单目操作符、关系操作符、逻辑操作符、条件操作符、逗号表达式、下标引用、函数调用和结构成员。
一、算术操作符(+、-、*、/、%)
1.除%以外,其他几个操作符可以作用于整数和浮点数。
2.对于/,如果两个操作数都为整数,执行整数除法。而只要有浮点数就执行的是浮点数除法。
3.%的两个操作数必须为整数。返回的是整除之后的余数。
二、移位操作符(<<左移操作符、>>右移操作符)
1.左移操作符:左边抛弃,右边补0;
2.右移操作符:①逻辑移位:左边用0填充,右边移位;
②算术移位:左边用原该值的符号位填充,右边丢弃;
3.注意:对于移位运算符,不要移动负数位,这个是标准未定义的。
三、位操作符:(&按位与、|按位或、^按位异或)
注意:他们的操作数必须为整数。
四、赋值操作符(可以重新进行赋值)
复合赋值符(+=、-=、*=、/=、%=、>>=、<<=、&=、|=、^=)
五、单目操作符
!(逻辑反操作)、-(负值)、+(正值)、&(取地址)、sizeof(操作数的类型长度(以字节为单位))、~(对一个数的二进制位取反)、--(前置--、后置--)、++(前置++、后置++)、*(间接访问操作符(解引用操作符))、类型(强制类型转换)。
六、关系操作符(>、>=、<、<=、!=、==)
七、逻辑操作符(&&逻辑与、||逻辑或)
&&:判断两侧的表达式是否都为真,都为真则&&表达式为真;
||:判断两侧的表达式只要有一个为真,则||表达式为真;
八、条件操作符(exp1 ? exp2 : exp3)
九、逗号表达式
就是用逗号隔开的多个表达式;逗号表达式,从左向右依次执行,整个表达式的结果是最后一个表达式的结果。
十、下标引用、函数调用和结构成员
1.[ ]操作数:一个数组名+一个索引值
2.( )函数调用操作符:接受一个或者多个操作数,第一个操作数是函数名,剩余的操作数就是传递给函数的参数
3.访问一个结构体成员:. 结构体.成员名 -> 结构体指针->成员名