1.算术操作符
有关计算的操作符有
+ - * / %
其中%是取模的意思
/这里需要强调一下除法(/)
如果当进行除法运算的时候,除号两边都是整数的形式那么将进行的是整数除法
char a = 9;
char b = 2;
char c = 0;
c= 9/2;
printf("%f",c);
结果为4
/如果当两边都是小数的形式那么最后可得到小数的结果
char a = 9.0;
char b = 2.0;
char c = 0;
c= 9.0/2.0;
printf("%f",c);
结果为4.500000
2.移位操作符
左移操作符有
>>(右移) <<(左移)
左移和右移都是在移动进制位
/例如
int a =2 ;
a<< 1;
printf("%d",a);
结果为4
在这里我对a左移一位,因为int整型是4个字节,一个字节是8位所以int共占32位
根据图中的显示最后的结果为4
3.位操作符
按位与 &
按位或 |
按位异或 ^
**按位与:**两假为假,两真才为真
0&1=0 0&0=0 1&1=1
**按位或:**一真及为真
0|1=1 0|0=0
**按位异或:**相同为0,不同为1
0^1=1 0^0=0 1^1=0
/这里运算都是根据数字的二进制进行计算
例如 2&4=1
2的二进制是00000010
4的二进制是00000100那么进行上下对应的就是
00000010
00000100
根据&原则得出00000000
最后的二进制结果为1
4.赋值操作符
赋值 = 加后赋值+= 减后赋值-= 乘后赋值*= 除后赋值/= 取模后赋值%=
还有&= ^= |=
5.单目操作符
逻辑返操作 !
负值- 正值+
&取地址 sizeof 求类型长度(按字节) 对一个数二进制取反~
前置加加++ 后置加加++
解引操作符(间接引用操作符)*
强制类型转换(类型)
1.在这里需要注意的一下sizeof是操作符如果在与函数进行运用的时候一定要加上(),如果与自变量运用的时候可以直接在后面运用
2.~按位取反的意思是把一个二进制数0变1 1变0
3.前置++是先加后用
后置++是先用后加
/前++和后++区别/
int a =3
int b = a++ *2
结果为 b=6
a=4
int a = 3
b= ++a *2
结果为 b=8
a=4
6.关系操作符
大于> 大于等于 >= 小于< 小于等于<= 不等于!= 等于==
这里需要注意的是 ==是等于而 =是赋值
7.逻辑操作符
逻辑与&&
逻辑或||
这两个相当于数学中的且和或的关系,并且联系着前后两个语句
8.条件操作符
条件操作符也叫三目操作符,这个操作符的有点是语句短运算快,可以替换if else语句
语句结构
exp1 ?exp2:exp3
解释如果exp1成立那么exp2计算,整个结果是exp2的结果
如果exp1不陈立exp3计算,整个结果是exp3的结果
if a>b
max = a;
else
max = b
如果我想用条件操作符替换那么应该是
max =a > b ?a : b;
直接就这一句话代替了上面的if else语句