将一个数的指定位置0或1
#include<stdio.h>unsignedintset_bit(unsignedintnum,intpos,intflag){intn=1;n=n<<pos;//将n的第pos位置1,其他全为0if(flag==0){num=num&(~n);//将num的n位置0}elseif(flag==1){num=num|n;}returnnum;}
调用如下:
inta=0x10;//位置从0开始a=set_bit(a,1,1);//将a的第2位,置1,结果为10010即0x12
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。