您的位置:首页 > 编程语言 > C语言/C++

位操作c++代码实例及运行结果

2018-02-02 12:31 316 查看
给定一整型变量a,写两段代码,第一个设置a的bit3,第二个清除a的bit3.“,在这两个操作中,要保持其他位不变

设置a的bit 3的意思就是将a和00001000作|(或)操作,这样其他位都不变,只有第3位变成1;

清除a的bit3的意思就是将a和11110111作&(与)操作,这样其他位都不变,只有第3位变为0;
c++代码
#include <iostream>
#define bit3 (0x1<<3)//将十六进制的1左移3位,即0001变为1000

using namespace std;

int set(int a)
{
return a|=bit3;
}

int clear(int a)
{
return a&=(~bit3);
}

int main()
{
int a,set_a,clear_a;
int num=0;//num位输入次数,这里限制为2次
while(1)
{
if(num==2)
break;
num++;

cout<<"请输入一个数a"<<endl;
cin>>a;
set_a=set(a);
clear_a=clear(a);
cout<<"设置a的bit3后值为"<<set_a<<endl;
cout<<"清除a的bit3后值为"<<clear_a<<endl<<endl;
}
return 0;
}

运行结果

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: