#include <stdio.h>
unsigned int set_bit(unsigned int num, int pos, int flag)
{
int n = 1;
n = n << pos; //将n的第pos位置1,其他全为0
if (flag == 0)
{
num = num&(~n);//将num的n位置0
}
else if (flag == 1)
{
num = num | n;
}
return num;
}
调用如下:
int a = 0x10;
//位置从0开始
a = set_bit(a,1,1);//将a的第2位,置1,结果为10010即0x12
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。