C语言第五章(运算符,表达式,语句)
1、算数运算符:
- 赋值运算符:=
- 加减法运算符:+ -
- 乘除法运算符* /:浮点数除法的结果是浮点数,整数的除法是整数,截断:7/4=1(小数部分被抛弃,只留下整数部分)
- 混合整数与浮点数的结果是浮点数,编译器会把运算对象转换成相同类型:7./4=1.75
- 趋零截断:-5/2=-2
- 取模运算符%:求余数:9%4=1
- ++:自增运算符i=1;i++=1;++i=2;i=2
- –:参考上一解释
2、关系运算符:
- ==:检查两个数是否相等
- !=:检查两数是否不相等
-
<
-
= <=
3、逻辑运算符 - &&:与,同时,and
- ||:或,or
- !:非
4、位运算符
1、&:按位与操作,按二进制位进行"与"运算:A=60=0011 1100
B=13=0000 1101
A&B=0000 1100
2、|:按位或运算符,按二进制位进行"或"运算。A|B=0011 1101
3、^:异或运算符,按二进制位进行"异或"运算:A ^ B =0011 0001
4、:取反:1=0
5、<<:
二进制左移运算符。将一个运算对象的各二进制位全部左移若干位
A<<2=1111 0000
A>>2=0000 1111
五、赋值运算
六、杂项运算
1、sizeof() :返回变量的大小
2、&:返回变量的地址
3、*:指向一个变量
4、A?B:C :如果A为真则B,反之则C
七:运算的优先级
八:注意:例:ans = num/2 + 5*(1+num++);
在这里面可能编译器会先算nums++,导致前面的num+1 ,所以
1、如果一个变量出现在一个函数的多个参数或者表达式中,不要对该变量使用递增或递减运算符
九:int count=0; while(count++<20)sum+=count;
计算前二十个整数的和
十:副作用:是对数据对象或文件的修改。
序列点:程序执行的点,通常以分号为标志,副作用发生在序列点之前。
十一:强制转换类型:mice=(int)1.7+(int)1.4;mice=2;