& | ^ << >> 操作符在程序中的应用
来源:互联网 发布:卡通农场怎么恢复数据 编辑:程序博客网 时间:2024/04/28 16:19
& 按位与 都为1时则为1,其余为0
| 按位或 都为0时为0,其余为1
^ 按位异或 相同为1,不同为0
利用好这三个 & | ^ << >> 操作符,可以节省内存,提高运行效率
举三个例子:
1.利用死循环重复输出两个值,运用硬皮反正面的道理
#include <stdio.h>
void main()
{
int a=1;
while(1)
{
if((a&1)!=0)
cout<<"偶数"<<endl;
else
cout<<"奇数"<<endl;
a++;
}
结果:
2.不使用中间变量交换两个数的值
三种方法:
1.加法:
x=x+y;
y=x-y;
x=x-y;
2.利用乘法:
x =x*y;
y=x/y;
x=x/y;
3.利用异或^
x=x ^ y;
y=y ^ x;
x=x ^ y;
3. << 与 >> 和乘除法的关系
一个数a,a<<1 相当于乘以2;向左移动几位就相当于乘以了2的几次方;
a>>1;这个相当于除以2;向右移动几位就相当于除以了2的几次方;
所以在写程序的时候不要这样写了:
if (a/2)
这样写比较高效:
if(a>>1)
- & | ^ << >> 操作符在程序中的应用
- 数理逻辑在程序中的应用
- CHM帮助文件在VB程序中的应用
- 人工智能在围棋程序中的应用
- 状态模式在绘图程序中的应用
- CHM帮助文件在VB程序中的应用
- Ping程序在TCP/IP中的应用
- CHM帮助文件在VB程序中的应用
- 结构在C程序中的应用
- PendingIntent在AppWidget程序中的应用
- 正则在小偷程序中的应用
- 正则在小偷程序中的应用(续)
- PendingIntent在AppWidget程序中的应用
- PendingIntent在AppWidget程序中的应用
- 递归在数据库与程序中的应用
- Mybatis 在CS程序中的应用
- gdb在程序开发中的应用
- 查表法在java程序中的应用
- 而要保证这一切的前提条件就是出色的SSAT+TOEFL成绩。
- 批处理IF命令详解
- 批处理for命令详解
- 深入浅出Windows驱动开发:栈的忧虑(图)
- Android开发环境配置
- & | ^ << >> 操作符在程序中的应用
- win7 Vista下让程序默认以管理员权限运行
- android 2.3 bluetooth 移植的一些问题记录
- poj 1456 Supermarket 贪心,我已开始用dp,没做出来,惭愧!!
- Android 开发中的 Handler ,Thread ,Message ,Runnable 的综合使用方法
- 网络通讯框架mina和xscocket的简单比较
- linux下ss工具简介
- 专家畅谈ASP.NET与PHP的未来
- set map list