详解操作符--c语言

操作符分类

算术操作符

  • + - * / %

  • 1.除了%操作符之外,其他的几个操作符就可以用于整数和浮点数

  • 2.对于/操作符如果、个操作数都是整数,执行整数除法,而只要有

  • 浮点数执行的就是浮点数除法。

  • 3.%操作符的两个操作数必须为整数。返回的是整除之后的余数。

移位操作符

<< 左移操作符

>> 右移操作符

  • 移位操作符的操作数只能是整数

  1. 左移操作符

移位规则:

左边抛弃,右边补0

  1. 右移操作符

移位规则

a.逻辑右移

左边为0填充,右边丢弃

b.算术右移

左边用改制的符号位填充,右边丢弃

位操作符

应用范围:整数范围内

运算编码:补码

输出方式:整形表达式计算使用在内存中的是补码,打印和看到的是源码

& //按位与

例子:

a = 5,b = 1

a: 00000000000000000000000000000101

b: 00000000000000000000000000000001

a&b 00000000000000000000000000000001

运算方法:将整数从十进制转化为二进制,上下比较,两个都是1才为1,有0则为0

| //按位或

例子:

a=3,b=5;

a: 000000000000000000000000000000011

b: 000000000000000000000000000000101

a|b: 000000000000000000000000000000111

运算=方法:将整数从十进制转化为二进制,上下比较,有1则为1,两个都是0才是0

^ //按位异或

例子

a=3,b=5;

a: 00000000000000000000000000000011

b: 00000000000000000000000000000101

a^b:00000000000000000000000000000110

运算方法:上下比较,相同为0;不同为1;

赋值操作符

赋值操作符是一个很棒的操作符,他可以让你得到一个你之前不满意的的值。

也就是你可以给自己重新赋值。

*赋值操作符可以连续使用,例如

int a = 10;

int x = 0;

int y = 20;

a = x = y + 1;//连续赋值

单目操作符

! 逻辑反操作

- 负值

+ 正值

& 取地址

sizeof 操作数的类型长度(以字节为单位)

~ 对一个数的二进制按位取反

-- 前置,后置--

++ 前置,后置++

* 间接访问操作符(解引用操作符)

(类型) 强制类型转换

关系操作符

>

>=

<

<=

!= //用于测试 不相等

== //用于测试 相等

警告:

在编程的过程中== 和=不小心写错,

逻辑操作符

&& 逻辑与

| | 逻辑或

区分 逻辑与 和 按位与

区分 逻辑或 和 按位或

1&2---------->0

1&&2--------->1

1|2------------->3

1| | 2----------->1

逻辑与和或的特点

&&操作符左边为假,右边不计算;

| | 操作符左边为真,右边不计算;

结果a= 1,b = 2,c = 3,d = 4

条件操作符

exp1 ? exp2 : exp3

例如

if(x < 0)

y = 10;

else

z = 0;

上面代码用条件操作符表示为

(x < 0) ? (y = 10) : (z = 20 )

逗号表达式

exp1, exp2, exp3,.........expN

逗号表达式,从左向右一次执行。整个表达式的结果是最后一个表达式的结果

c = 13;

下标引用,函数调,用和结构成员

1.[ ] 下标引用操作符
操作数:一个数组名 + 一个索引值

例如

int arr[10] ;//创建数组

arr[9] = 10;//实用下标引用操作符

[ ] 的两个操作数是arr和9

2.( ) 函数调用操作符
接受一个或多个操作数,第一个操作数是函数名,剩余的操作数就是传递给函数的参数

3.访问一个结构的成员
. 结构体.成员名
-> 结构体指针 -> 成员名

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值