算术运算符

 算术运算符:

+ 加法 , 一目取整

- 减法, 一目 取负 -a

* 乘法

/ 除法

% 取模、求余 a%b a 和b 必须是整型

++ 自加 1 a++ / ++a

-- 自减 1

 关系运算符

> 大于 判断a是否大于 b a > b

< 小于 判断a是否大小于 b a > b

>= 大于等于 判断a是否大于或者等于 b a >= b

<= 小于等于 判断a是否小于或者等于 b a <= b

== 恒等于 (等于) 判断a是否等于 b a == b

!= 不等于 判断a是否不等于 b a != b

注意:

关系运算符用于判断表达式是否满足给定的大小条件。

  • 关系运算符组成的表示是是关系表达式 ,他的值为布尔值 (真/假);
  • 注意== 不是= 不要搞错了。

逻辑运算符

逻辑反 将逻辑真变假 ..... 真假交换

&& 逻辑与 可以将两个关系表达式 链接起来, 当左右两边的表达式都为真则表示真

|| 逻辑或 可以将两个关系表达式 链接起来, 当表达式其中一个为真则整个表达式为真

注意:

  • &逻辑与运算中如果左边表达式为假, 右边不会别运算
  • int a = 3 , b = 9 ; if ( a > b && ++a ) ; a的值是多少?
  • || 逻辑或运算的过程中如果左边表达式为真, 右边将不被运算
  • int a = 3 , b = 9 ; if ( a < b || ++a ) ; a的值是多少?
  • 注意==恒等于的小心思, 不要写少了, 建议把 左值 写成常量

 

位运算符

~ 位逻辑反 ~a 把a的二进制位每一个都取反 (1变0 / 0变1 )

& 位逻辑与 a&b 将a和b 的每一位进行位与操作,常用于清零操作

| 位逻辑或 a|b 将a和b 的每一位进行位或操作,常用于置1操作

^ 位逻辑异或 a^b 将a和b 的每一位进行位异或操作,相同为1,不同为0,当a于b再异或一次则a变为原来的值。

    
/* 不使用第三个变量将ab两个值交换 */
char a = 100; char b = 115; a = a ^ b; b = a ^ b; a = a ^ b; printf("a:%d ", a); printf("b:%d ", b);

 注意

  • 赋值运算符
  • 不可以对常量进行赋值
  • 不可以对数组赋值 arr = 199 ; // 不可以对数组赋值
  • 可以连续赋值 顺序是从右往左;//连续赋值 a = b = 100 ;

条件运算符 (三目运算符)

唯一一个拥有三个操作数的运算符

语法: 表达式1 ? 表达式2 : 表达式3

解析: 判断表达式1 是否为真 ? 如果是 取 表达式2的值 否则取表达3

sizeof 运算符

用来计算数据类型或变量所占的内存空间大小(字节数)

语法: sizeof(类型) / sizeof(变量) , 如果计算的是变量 括号可以省略

return 运算符

含义: 用来退出某个函数(主函数:直接退出程序。 子函数:退出子函数。)

语法要求:必须写在函数体内{ } , 可以携带函数的返回值

优先级

使用linux命令:$ man operator 可查看

原文地址:https://www.cnblogs.com/ding-ding-light/p/14070427.html