操作符简述
来源:互联网 发布:淘宝买的固话办信用卡 编辑:程序博客网 时间:2024/05/20 07:16
这段时间系统的学习了一下操作符,现将自己总结的知识点和大家做个分享。
首先,操作符由算术操作符、移位操作符、位操作符、赋值操作符、单目操作符、关系操作符、逻辑操作符、条件操作符、逗号表达式、下标引用、函数调用和结构成员组成。一些基本的大家都清楚,我就不一一做介绍了,下面是我认为需要注意的几个方面:
1.%操作符的两个操作数必须为整数,其他的算术操作符可以作用于整数和浮点数。
2. << 左移操作符;移位规则:左边丢弃右边补0;
>> 右移操作符;右移运算分为两种:逻辑右移——左边补0,右边丢弃
算术右移——左边补符号位,右边丢弃
移位位数不能为负,例如:a<<-2,是错误的。
3.!取反操作符
#include<stdio.h>{ int flag = 2; printf("%d",!flag); return 0;}
这里输出的结果为0,因为是逻辑取反。
4.1)sizeof求操作数的类型长度,以字节为单位,注意:sizeof不是函数
sizeof(a)可以写成sizeof a,这里a为一个变量;但是求类型长度时,必须写成sizeof(int)。一般建议写成sizeof().
2)sizeof和&后跟数组名的区别:
sizeof(数组名),数组名表示整个数组,表达式求的是整个数组的大小,单位是字节;
&数组名,数组名表示整个数组,表示求的是整个数组的地址;
除上述两种情况外,所有的数组名都是首元素的地址。
5.分清楚 逻辑与( &&)和按位与(&)以及逻辑或(||)和按位或(|)的区别
1 & 2,结果为 0;
1&& 2,结果为 1;
1 | 2,结果为 3;
1 || 2,结果为1.
6.逗号表达式,从左到右依次执行,整个表达式结果为最后一个表达式结果
int a = 1;int b = 2;int c = (a > b,a = b + 10,a,b = a +1);
c = 13, a>b为假,执行第二条语句,a=b+10, a=12,执行最后一条语句,b=a+1,b=13,所以c = b,所以c = 13
7.a++和a-- 先对a使用,再进行自加或自减;
++a和--a 先对a进行自加或自减,再使用。
上面是我的一些总结,如果有错,欢迎指正。
- 简述位操作符
- 操作符简述
- 简述REDO简单操作
- C语言的各种位运算符的操作简述
- 简述handler实现异步操作
- 简述MFC操作Excel相关
- 简述C#对数据库的操作
- 操作系统安全防范简述win 2003篇
- Oracle中NULL值操作简述
- 文件操作的几个函数简述
- Python字典增删操作技巧简述
- Python字典增删操作技巧简述
- MYSQL binlog简述及简单操作
- JavaScript对HTML DOM 的操作简述
- Linux下C++操作redis简述
- MYSQL binlog简述及简单操作
- 1.《Mysql必知必会》简述 MySQL基本操作
- Java多线程/并发17、简述CAS 操作
- 需求分析与系统设计
- 检测网站是否开启SSH服务
- Spring boot 自定义统一异常处理(以及规范响应格式)
- 正则表达式的经典实例
- python的list和javascript的array的方法
- 操作符简述
- JAVA中如何判断文件或文件夹是否存在
- springboot入门 整合ssm框架
- GO学习之路(二)Go for win10 IDE环境的安装
- TP5备份还原Mysql
- Cocos2dx三种定时器的使用
- bin/sh^M: bad interpreter: No such file or directory解决
- ArrayList集合
- Hibernate中对象的三种状态及相互转化