C语言操作符: (1)算数操作符
+ — * / % 1)“%”操作符只能作用于整数,返回的是整除之后的余数。其他几个操作符可以作用于整数和浮点数 2)对于“/”操作符,如果两个数都为整数,执行整数除法,而只要有浮点数执行的就是浮点数除法(2)移位操作符
<< 左移操作符 移位原则:左边抛弃,右边补0 >>右移操作符 移位原则:1.逻辑移位,左边用0填充,右边丢弃 2.算数移位,左边用原该值的符号位填充,右边丢弃 警告:对于移位运算符,不要移动负数位,这个是标准未定义的。 eg: ` int num=10; num>> —1; //error`(3)位操作符
& //按位与 | //按位或 ^ //按位异或 注:它们的操作数必须是整数(4)赋值操作符
它可以让你得到一个你之前不满意的值,也就是你自己可以重新赋值 赋值操作符可以连续使用,比如: int a=10; int x=0; int y=20; a=x=y+1; //连续赋值 等同于: x=y+1; a=x; 复合赋值符: += —= *= /= %= >>= <<= &= |= ^= 这些运算符都可以写成复合的效果,eg: int x=10; x=x+10; x+=10; //复合赋值(5)单目操作符
! //逻辑反操作 — //负值 + //正值 & //取地址 sizeof //操作数的类型长度(以字节为单位) ~ //对一个数的二进制按位取反 — — //前置、后置— — ++ //前置、后置++ * //间接访问操作符(解引用操作符) (类型) //强制类型转换(6)关系操作符
> >= < <= != :用于测试不相等 == :用于测试相等(7)逻辑操作符
&& //逻辑与 || //逻辑或 区分逻辑与与按位与 区分逻辑或与按位或: 1&2---------->0 1&&2--------->1 1|2---------->3 1||2--------->1(8)条件操作符
exp1 ? exp2 : exp3(9)逗号表达式
exp1,exp2,exp3........expN 逗号表达式,就是用多个逗号隔开的多个表达式.从左向右依次执行,整个表达式的结果是最后一个表达式的结果(10)下标引用、函数调用和结构成员
1) [] 下标引用操作符 操作数: 一个数组名 + 一个索引值 int arr[10]; //创建数组 arr[9] = 10; //实用下标引用操作符 [ ]的两个操作数是arr和9 2) ()函数调用操作符 接受一个或者多个操作数:第一个操作数是函数名,剩余的操作数就是传递给函数的参数 3)访问一个结构的成员 . 结构体.成员名 -> 结构体指针->成员名