操作符
算术操作符
+ - * / %
+:做加法使用
-:做减法使用,
*:做乘法使用
/:做除法使用,除号的两端都是整数的时候,执行的是整数除法,如果两端只要有一个浮点数就执行浮点数的除法
%:求余数使用,注意:%俩边必须都为整形,如4%2,不能出现其它形式字符如:4.0%2.0或4.0%2这样是错的
/和%举例
当%俩边出现浮点数时,此时会报错
位移操作符
>> <<
箭头朝左,表示左移,箭头朝右,表示右移
移位操作符可以在二进制的基础上对数字进行平移
位操作符
& :按位与操作(二进制下)
^ :按位异或操作(二进制下)
| :按位或操作(二进制下)
赋值操作符
=: a=5;b=a;此时a等于5,b也等于5,时等号左边的字符等于等号右边的字符
+=:加赋值,列:a=5;a=a+5;将a=a+5可简化位a+=5
-=:减赋值,列:a=5;a=a-5;将a=a+5可简化位a-=5
*=:乘赋值,列:a=5;a=a*5;将a=a*5可简化位a*=5
/=:除赋值,列:a=5;a=a/5;将a=a*5可简化位a/=5
&=:按位与赋值
^=:按位异或赋值
|=:按位或赋值
>>=:左移后赋值
<<=:右移后赋值
单目操作符
#include<stdio.h> int main() { int a = 10; int b = 2; int* c = &a; printf("%d\n", !a);//逻辑反操作 printf("%d\n", a+b);//正值 printf("%d\n", a-b);//负值 printf("%d\n", sizeof(int)); //计算int型所占字节大小 printf("%d\n", --a); //先--,再使用a=10;--a,a为9,打印9 printf("%d\n", a--); //先使用,再--,a=9,先打印9,再--,加完后a=8 printf("%d\n", ++a);//先++,再使用a=9;++a,a为9,打印9 printf("%d\n", a++);//先使用,再++,a=9,先打印9,再++,加完后a=10 printf("%d\n", *c);//对c进行解引用 printf("%f\n", (float)a); //将a强制转化为float型 return 0; }
关系操作符
逻辑操作符
条件操作符
exp1 ? exp2 : exp3,如果exp1为真则执行exp2,否则执行exp3
#include<stdio.h> int main() { int a = 10; int b = 2; a == b ? printf("YES") : printf("NO"); return 0; }
逗号表达式
exp1, exp2, exp3, …expN 逗号表达式以期最后一个逗号后的语句作为输出语句
#include<stdio.h> int main() { int a = 10; int b = 2; printf("%d", (a, b)); return 0; }
下标引用、函数调用和结构成员
[] () . -> (这里后期会更新)
常见关键字
auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while
define不是关键字
变量的命名:
1.必须要有意义
2.必须是由数字,字母和下划线_组成的
3.开头必须是字母或下划线
4.关键字不能做变量名