【笔记-C语言】 运算符
2017-12-14 21:08
260 查看
不同数据类型进行计算时,以数据精度高的为主。
如(int)x/(float)y结果为float型
++a 先加后使用
a++ 先使用后加
+=,-=,*=,/=
a+=1等价于a=a+1;
||(或) 前一个为真,则不进行第二个表达式计算
!(非)
&按位与
取出某位(判断某位是否存在) if(a&x)
1001 1001
0010 得到0 0001 得到1
删除某位 a&=~x;
1001 (删除末尾1)使用1的反码1110
1110 得到1000
| 按位或 合成数 a|=x;
1010
0101 得到1111
^ 异或 不同时为1时得到1 a^=x;
1001 1010
0011 得到1010 0011得到1001
<< 左移
>> 右移 二进制
Exp:(9)1001<<2得到
100100(36)
1001>>2 得到 0010(2)
sizeof a 变量可以不加括号
如(int)x/(float)y结果为float型
1.算术
+,-,*,/,%,++,--++a 先加后使用
a++ 先使用后加
+=,-=,*=,/=
a+=1等价于a=a+1;
2. 关系
>,<,==,>=,<=,!=3. 逻辑
&&(与) 有短路特性,前一个表达式为假,则不进行第二个表达式计算||(或) 前一个为真,则不进行第二个表达式计算
!(非)
4. 位运算
~按位求反 一个二进制数&按位与
取出某位(判断某位是否存在) if(a&x)
1001 1001
0010 得到0 0001 得到1
删除某位 a&=~x;
1001 (删除末尾1)使用1的反码1110
1110 得到1000
| 按位或 合成数 a|=x;
1010
0101 得到1111
^ 异或 不同时为1时得到1 a^=x;
1001 1010
0011 得到1010 0011得到1001
5. 移位
移位运算的本质是进行了乘法操作,向左移动一位,就是乘一次2。<< 左移
>> 右移 二进制
Exp:(9)1001<<2得到
100100(36)
1001>>2 得到 0010(2)
6. sizeof
sizeof(int) 类型必须加括号sizeof a 变量可以不加括号
7. 三目运算符
a>b?a:b相关文章推荐
- C语言学习笔记 运算符,表达式和C语句
- 学习笔记2-C语言的运算符和程序结构
- 【达内C++学习培训学习笔记系列】C语言之一运算符
- C语言笔记(运算符及表达式)
- 黑马程序员----C语言学习笔记之运算符2
- 课堂笔记-C语言运算符
- C语言学习笔记(七)——其他运算符
- iOS开发学习笔记 2-2 C语言部分 类型、运算符与表达式
- c语言笔记——运算符
- C语言自学笔记3(运算符、表达式、语句)
- C语言学习笔记 lesson10&lesson11 运算符
- OS笔记:第三篇 C语言中的运算符与if分支结构
- C语言学习笔记3-运算符和表达式
- iOS开发学习笔记 2-2 C语言部分 类型、运算符与表达式
- 黑马程序员-c语言学习笔记-运算符
- C语言学习笔记(三) 输入输出函数的基本用法以及运算符
- C语言随堂笔记---数据类型、变量、运算符
- C语言学习笔记 运算符初步介绍
- C语言笔记1--类型、运算符与表达式
- 7、C语言深度学习笔记--运算符