c语言对特定位置0,置1

//将特定位置1
//参数1 数值 参数2 要置1的位
void set_biti(int *num, int pos) {
    *num |= (1 << pos);
}
//将特定位置0
//参数1 数值 参数2 要置0的位
void clear_biti(int *num, int pos) {
    *num &= ~(1 << pos);
}
#include 
void set_biti(int *num, int pos) {
    *num |= (1 << pos);
}
void clear_biti(int *num, int pos) {
    *num &= ~(1 << pos);
}
void main(){
	int a = 0xA3E5;
	int b = 0x75CB;

	set_biti(&a,0);
	set_biti(&a,1);
	set_biti(&a,7);
	set_biti(&a,10);

	clear_biti(&b,2);
	clear_biti(&b,3);
	clear_biti(&b,4);
	clear_biti(&b,10);
	clear_biti(&b,13);

	printf("%04x %04x\n",a,b);
}
gcc t.c
a
a7e7 51c3

A3E5 1010001111100101
A7E7 1010011111100111
75CB 0111010111001011
51C3 0101000111000011

你可能感兴趣的:(c++,c语言,java,开发语言)