c++操作符使用
2014-08-04 15:50
78 查看
一个下午的时间总算弄清楚c++各个操作符的使用方法,这个地方一直弄不清楚,今天终于有空把它弄清晰了
一:位操作符
1. & 操作符 (按位与)
运算符"&"是双目运算符。 其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1 ,否则为0。参与运算的数以补码方式出现。
例如:
9&5
可写算式如下:
00001001
&
00000101
=00000001
2. | 操作符 (按位或)
运算符“^”是双目运算符。 其功能是参与运算的两数各对应的二进位相异或,当两对应的二进位相异时,结果为1。参与运算数仍以补码出现
例如:
9|5
可写算式如下:
00001001
|
00000101
=00001101
3. ^ 操作符(按位异或)
运算符“^”是双目运算符。 其功能是参与运算的两数各对应的二进位相异或,当两对应的二进位相异时,结果为1。参与运算数仍以补码出现
例如:
9^5
可写算式如下:
00001001
^
00000101
=00001100
4. ~ 操作符(求反)
运算符~为单目运算符,具有右结合性。 其功能是对参与运算的数的各二进位按位求反
例如:
~(1001)
可写算式如下:
0110
5. << 操作符(左移运算符)
“<<”是双目运算符。左移n位就是乘以2的n次方。 其功能把“<<”左边的运算数的各二进位全部左移若干位,由“<<”右边的数指定移动的位数,高位丢弃,低位补0
例: a<<4 指把a的各二进位向左移动4位。如a=00000011(十进制3),左移4位后为00110000(十进制48)。 3*2*2*2*2=48
6. >> 操作符(右移运算符)
“>>”是双目运算符。右移n位就是除以2的n次方,其功能是把“>>”左边的运算数的各二进位全部右移若干位,“>>”右边的数指定移动的位数。
例: a<<4 指把a的各二进位向左移动4位。如a=00110000(十进制3),左移4位后为00000011(十进制48)。 48/2/2/2/2=3
二:&&与||
&&(逻辑与) 、 ||(逻辑或) :
作用:进行多项比较并将结果组合为单一的布尔值。同时&&(逻辑与) 和 ||(逻辑或) 又是短路操作符,即左边的表达式为假时,将不再执行右边的表式。
规律: &&(逻辑与) ,全真才为真 ; ||(逻辑或),有真则为真。
&&(逻辑与):两边必须是boolean,只要左边为假,右边的就不会在继续执行.
例如:
9&&5=1,9||5=1,9&&0=0,9||0=1
一:位操作符
1. & 操作符 (按位与)
运算符"&"是双目运算符。 其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1 ,否则为0。参与运算的数以补码方式出现。
例如:
9&5
可写算式如下:
00001001
&
00000101
=00000001
2. | 操作符 (按位或)
运算符“^”是双目运算符。 其功能是参与运算的两数各对应的二进位相异或,当两对应的二进位相异时,结果为1。参与运算数仍以补码出现
例如:
9|5
可写算式如下:
00001001
|
00000101
=00001101
3. ^ 操作符(按位异或)
运算符“^”是双目运算符。 其功能是参与运算的两数各对应的二进位相异或,当两对应的二进位相异时,结果为1。参与运算数仍以补码出现
例如:
9^5
可写算式如下:
00001001
^
00000101
=00001100
4. ~ 操作符(求反)
运算符~为单目运算符,具有右结合性。 其功能是对参与运算的数的各二进位按位求反
例如:
~(1001)
可写算式如下:
0110
5. << 操作符(左移运算符)
“<<”是双目运算符。左移n位就是乘以2的n次方。 其功能把“<<”左边的运算数的各二进位全部左移若干位,由“<<”右边的数指定移动的位数,高位丢弃,低位补0
例: a<<4 指把a的各二进位向左移动4位。如a=00000011(十进制3),左移4位后为00110000(十进制48)。 3*2*2*2*2=48
6. >> 操作符(右移运算符)
“>>”是双目运算符。右移n位就是除以2的n次方,其功能是把“>>”左边的运算数的各二进位全部右移若干位,“>>”右边的数指定移动的位数。
例: a<<4 指把a的各二进位向左移动4位。如a=00110000(十进制3),左移4位后为00000011(十进制48)。 48/2/2/2/2=3
二:&&与||
&&(逻辑与) 、 ||(逻辑或) :
作用:进行多项比较并将结果组合为单一的布尔值。同时&&(逻辑与) 和 ||(逻辑或) 又是短路操作符,即左边的表达式为假时,将不再执行右边的表式。
规律: &&(逻辑与) ,全真才为真 ; ||(逻辑或),有真则为真。
&&(逻辑与):两边必须是boolean,只要左边为假,右边的就不会在继续执行.
例如:
9&&5=1,9||5=1,9&&0=0,9||0=1
相关文章推荐
- 使用组件来保护你的ASP代码
- SCI软件使用方法总结-定位测量篇
- IP 伪装简易使用说明
- 源码推荐:一个使用C#绘制图形引擎的Framework
- Win32汇编教程六 工具栏和状态栏的使用
- Win32汇编教程五 菜单和加速键的使用
- Win32汇编教程三 一个简单的对话框 --- 兼谈资源文件的使用
- 使用ActiveX控件开发网页常见的问题
- 使用 ASP+ DataGrid 控件来创建主视图/详细资料视图 (2)
- 使用 ASP+ DataGrid 控件来创建主视图/详细资料视图
- 手册中关于怎样使用TQuery 的误导
- 使用ASP和Word进行服务器端拼写检查
- 单独使用CRecordSet
- 在 Web 页上使用条件数值格式
- 关于PHP与Sybase数据库的连接与使用
- 使用ASP常见问题解答
- [导入]Guru of the Week:#41 使用标准库
- 如何使用ASP进行打印操作
- VB中Winsock控制的UDP协议的使用
- FUNCky 的使用