c语言的操作符总结

1.算术操作:

+ -  *  /  %

/

1)两个数均为整数则进行整数除法

2)只要有一个数为浮点数就进行浮点数除法

%
1)%操作符的两个操作数必须为整数


2.关系运算符:
==     等于;
!=   不等于;
>=     大于等于;
<=     小于等于;
>        大于 ;
<         小于;
*注意;等于为==,=为赋值运算
为了我们更清楚这一点,可以写为以下形式:
if(3==i)

3 .逻辑操作符:
&&  逻辑与;
||      逻辑或;
!     非;
*注:逻辑与左边为0,右边不计算
        逻辑或左边为1,右边不计算
4.位操作符:

&  按位与
|  按位或
~  按位非
位指的是二进制位
注意:操作数必须是整数
5..赋值操作符

=
可以重新赋一个值
复合赋值符:
+=     -=    *=    /=    %=   >>=   <<=   &=   |=  
这些运算符都可以写成复合的效果

6.单目操作符

!逻辑反操作
非0为真,0为假
-  负值
+  正值
&  取地址
sizeof   操作数的类型长度(单位:字节)
1)sizeof可以求变量或类型所占空间的大小
2)变量可不放在()中,但类型一定要放在()中;
3)在sizeof(数组名)中  数组名表示整个数组 
~   对一个数的二进制按位取反
0变为1,1变为0
--   前置、后置--
前置-- :先--后使用

例:int a = 1 ;
int b = 0;
b = --a;
得到结果a=0;b=0;
后置-- :先使用后--

例:int a = 1 ;
int b = 0;
b = a--;
得到结果a=0;b=1;
++ 前置、后置++
与--原理相同
*     间接访问操作符(解引用操作符)

例:
int num = 10;
int *p = &num;
*p = 20;//*p就相当于num
(类型)  强制类型转换
例:int   a   =   1 ;
float  b  =  0;
b    =  (float)a; //这里就是将整型的a强制转换为浮点型

7.条件操作符
exp1?exp2:exp3
例:
if(a>3)
b = 1;
else
b = -1;
用条件表达式来写是: b =(a>3)? 1 : -1


8.移位操作符

1、<<  左移操作符
   左边抛弃,右边补0;
 
2、>>  右移操作符
(1)逻辑右移
右边丢弃,左边补0;
(2)算数右移
左边用原该值的符号位填充,右边丢弃
eg: int num=-1;
      num >> 1;
num=-1;
-1的补码:11111111111111111111111111111111
逻辑右移:01111111111111111111111111111111  //-1
算数右移:11111111111111111111111111111111  //-1

9.操作符的属性:
复杂表达式的求值有三个影响的因素。

1. 操作符的优先级

2. 操作符的结合性

3. 是否控制求值顺序。

两个相邻的操作符先执⾏哪个?取决于他们的优先级。如果两者的优先级相同,取决于他们的结合性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值