C语言操作符
来源:互联网 发布:gmp系统网络的搭建 编辑:程序博客网 时间:2024/06/05 11:49
移位表达式
左移操作符<<
左边抛弃,右边补零
右移操作符>>
1.逻辑右移
左边补零,右边丢弃
2.算数右移
左边补符号位,右边丢弃
注意:
1.左移一位相当于乘2,右移一位相当于除2,并且在内存中存放的是二进制的补码,且移位操作符只对int型数操作
2.移位操作符不要移动负数位,这个标准未定义
位操作符
& //按位与| //按位或^ //按位异或注:操作数必须是整数,并且是补码**
a & a = 0;a & 0 = a;
举例:
将0000 0000 0011 1111从右往左数的第5位的1变为0
解:0000 0000 0011 1111 & 1111 1111 1110 1111 = 0000 0000 0011 1111
将0000 0000 0011 1111从右往左数的第7位的0变为 1
0000 0000 0011 1111 | 0000 0000 0100 0000 = 0000 0000 0111 1111
赋值操作符 =
int x = 0;int x = 10;
符合赋值符
+=-=*=/=%=>>=<<=&=|=^=
单目操作符
! //逻辑反操作- //负值+ //正值& //取地址sizeof //不是函数~ //二进制数按位取反--++(类型) //强制类型转换**
temp = ++a;是先加1,再使用,等价于 a = a + 1,temp = a;
a ++;先使用,后加1,相当于 temp = a, a = a + 1;
**int a[10] = {0}; //32位sizeof(a) //40sizeof(&a) //4&a //表示整个数组的地址,表示整个大小,加1则会在内存中跳过整个数组a //表示数组首元素的地址,加1则是跳过一个数组元素**//sizeof(表达式) /*表达式的结果不计算,因为sizeof在编译时就有,而当a,和b是全局变量时,他们的创建是在程序执行是才创建,所以,sizeof()中括号的值不看值,只看它的类型*/
关系操作符
>< <= != ==
逻辑与逻辑或
逻辑与&&:当遇到一个表达式为0,后面的都不计算,整个表达式为0
逻辑或&&:当遇到一个表达式为1,后面的都不计算,整个表达式为1
条件操作符
exp1 ? exp2 : exp3等价于if(exp1) {exp2}else{exp3}
逗号表达式
exp1,exp2,exp3.../*表达式计算时从左到右计算,但整个表达式的值为最右边的表达式的结果,计算时必须计算左边的表达式,因为左边有可能会影响右边表达式的值*/
下标引用 函数调用及结构成员
1.[]
操作数: 一个数组名 + 一个索引值
int arr[9] = {0}; //类型为int [9],类型为去掉变量名剩下的都是类型[]的操作数为两个 arr和9
2.()
函数调用操作符,接受一个或多个操作数,第一个为函数名,其余都是参数
3.访问一个结构的成员
.结构体.成员名
->结构体指针->成员名
注意:
#include<stdio.h>int main(){ int arr[] = {0}; scanf ("%d",arr); //arr为数组首地址的值,当arr + 1时,数组值跳过数组的一个元素的地址 scanf("%d",&arr); //&arr为数组的地址,当&arr + 1时,数组在内存中便会跳过整个数组 sizeof(&arr); //4 sizeof(arr); //40 //sizeof(数组名)此时的数组名表示的是整个数组 return 0;}
阅读全文
1 0
- c语言操作符
- C语言#,##操作符
- C语言操作符
- 【C语言】操作符
- 【C语言】操作符
- c语言操作符
- c语言操作符
- C语言操作符
- c语言操作符
- C语言操作符
- c语言操作符
- C语言操作符
- c语言操作符
- c语言操作符
- C语言操作符
- C语言操作符
- C语言操作符
- c语言操作符
- android之Blurry,图片模糊
- Javaweb-xml编程-XPath
- Java实现当前目录下的所有子目录和文件,并按层级打印
- 【Linux】SCP命令教程
- Maven3.5.0安装与配置+Eclipse应用
- C语言操作符
- Web.xml如果要是多个servlet写法?
- could not find 'com.github.a-voyager:AutoInstaller:v1.0'解决
- Delphi IDHTTP控件:GET/POST 请求
- 工作中遇到的问题
- Educational Codeforces Round 33 (Rated for Div. 2) C
- Java使用Jacob将wps的Word、Excel、PPT转化成PDF
- SVN
- javaweb_linux数据库操作