算术操作符+ - * / %(取模取余)
移位操作符>> <<(移动的是二进制位)
&按位与 |按位或 ^按位异或 ~按位取反
赋值操作符= += -= /=
单目操作符!逻辑反 &取地址
除号/两端如果都是整数,那么输出一定是整数
float a = 9/2;
printf(“%f\n”,a);
结果是:4.0000
int a = 2;
int b = a<<1;
printf(“%d\n”,b);
结果是:4(00010->00100)
if(a)
{a为真时}
if(!a)
{a为假时}
int a = 0;
printf(“%d\n”,~a);//按位取反后为11111111111111111111111111111111
结果是:-1
原码10000000000000000000000000000001第一位是符号位,负为1
反码11111111111111111111111111111110 符号位不变其他取反
补码11111111111111111111111111111111反码加1
整数在内存中存储的是补码
对于正整数,其原反补相同
++a//前置++,先++后使用
a++//后置,先使用再++
(类型)强制类型转换
int a = (int)3.14;
printf(“%d\n”,a);
关系操作符:
>= <= == !=
逻辑操作符:
&&逻辑与 ||逻辑或
条件操作符(三目操作符):
条件:式1?式2:式3
(式1成立,计算式2,整个结果是式2的结果;式1不成立则计算式3)
逗号:逗号隔开的一窜表达式,结果是最后一个式子的结果
下标引用、函数调:
[] ,()