C语言操作符总结

操作符详解
想要把操作符了解好,就必须了解操作符的用途: 指令系统的每一条指令都有一个操作符,它表示该指令应进行什么性质的操作。不同的指令用操作符这个字段的不同编码来表示,每一种编码代表一种指令。组成操作符字段的位数一般取决于计算机指令系统的规模。操作符的分类有很多:算术操作符,移位操作符,位操作符,赋值操作符,单目操作符,关系操作符,逻辑操作符,条件操作符,逗号表达式下标引用、函数调用和结构成员。我下面就分别的介绍下这些操作符。
算术操作符:很简单的理解,所谓加 +  减 - 乘 *  除 /,也就平常我们学的多了个%求余而已。名字没有多大变化,只是用法有要求:
1. 除了%操作符之外,其他的几个操作符可以作用于整数和浮点数。
2. 对于/操作符如果两个操作数都为整数,执行整数除法。而只要有浮点数执行的就是浮点数除法。
3. %操作符的两个操作数必须为整数。返回的是整除之后的余数。只要按照正常思维,利用算术操作符就很easy。
移位操作符:一个移到这边,那边的一个操作符;左右座位移动,空下来的座位就需要补位,它遵循  1!左移操作符移位规则:

左边抛弃、右边补0,而右移
1. 逻辑移位    左边用0填充,右边丢弃
      2. 算术移位
左边用原该值的符号位填充,右边丢弃
位操作符对字节或字中的最小位(bit)进行测试、置位或移位处理,位操作运算符是用来进行二进制位运算的运算符,也就是他们的操作数必须是整数。它分为两类:逻辑位运算符和移位运算符。

1、逻辑位运算符
(1)单目逻辑位运算符:~(按位求反)
作用是将各个二进制位由1变0,由0变1。
(2)双目逻辑运算符:&(按位与),|(按位或),^(按位异或)
其中优先级&高于^,而^高于|。
 & :两个都为1时结果为1。
 | :两个其中有一个为1则结果为1。
 ^ :两个不同则结果为1,否则为0。
2、移位运算符
  移位运算符有两个,<<(左移)、>>(右移)。两个 都是双目运算符。

赋值操作符:是可以自主赋值,不喜欢的初值换,人性操作,满足要求,赋值操作符可以连续使用,比如:int love=1;int lucky=3;

单目操作符:就是对一个对象的操作! 操作种类:  

逻辑反操作

- 负值

+ 正值
  & 取地址
  sizeof 操作数的类型长度(以字节为单位)
 ~ 对一个数的二进制按位取反
 -- 前置、后置--
 ++ 前置、后置++
* 间接访问操作符(解引用操作符)
(类型) 强制类型转换, 我们对sizeof()是以字节为单位返回操作数的大小,操作数必须在()里面

赋值操作符:> >=< <= != 用于测试“不相等”==,跟我们数学学的是一样的,很简单,注意不要把==和=混淆就好

逻辑操作符:逻辑操作符有哪些:&&逻辑与    || 逻辑或

条件操作符(也叫三目操作符)
exp1 ?   exp2 : exp3;
举例:  a>5 ?  b=3: b=4;   //如果a>5,那么b就等于3,否则等于4;
通常这么用   b = a>5 ? 3: 4;
因为,这个表达式的意思是:如果表达式一为真,那么整个表达式的结果就是第二个表达式!!!

逗号表达式下标引用:
用逗号隔开的表达式:exp1, exp2, exp3,......expn;
逗号表达式是从左往右运算的,但整个表达式的结果是最后一个表达式的结果;下标引用操作符
[  ]
这个符号是有两个操作数的,一个是数组名,一个是下标。

函数调用操作符
()
一个或者多个操作数,函数名+参数个数;

结构成员操作符
.      ->
定义一个结构体
struct   Stu  
{
char name[20];
int age ;
int height;


总结:每个操作符是要注意优先级和结合性的,准确的了解一个操作符,才能满足我们的期望值。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值