一個數二進制下對其中一位進行操作

#include<stdio.h>
#include<stdlib.h>
int main(){

	int a = 10;
	for (int i = a; i; i /= 2){

		printf("%d", i % 2);

	}
	//a |= (1 << 1); //某一位置換爲1
	//a &= ~(1 << 1);   //某一位置換爲0
	a ^= (1 << 3);     //某一位取反操作
	printf("\n");
	for (int i = a; i; i /= 2){

		printf("%d", i % 2);

	}
	printf("\n");
	system("pause");
	return 0;
}

這裏需要記住的是:

for(int i=a;i;i/x){

printf("%d  ",i%x);   //x爲進制數,這個可以輸出一個整數的在x進制每一位數字      
                              //比如x=10,a=1234,那麼會輸出4 3 2 1
}

其次,三個關係式須記住:

	a |= (1 << n); //某一位置換爲1
	a &= ~(1 << n);   //某一位置換爲0
	a ^= (1 << n);     //某一位取反操作
發佈了42 篇原創文章 · 獲贊 12 · 訪問量 3345
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章