int 형 변수를 이진수로 출력하는 함수를 만들면 아래와 같다.


아이디어 자체는 간단하다. 입력받은 정수를 Shift 연산을 이용해서 비트 이동을 시켜서 우리가 원하는 비트를 LSB에 오도록 만들고, 이 숫자를 1과 &연산을 하면 LSB의 숫자가 나오기 때문에 그 때의 값을 출력하는 방식이다.


void print32bit(int a){
	int i;
	for( i=31; i>=0; --i){
		printf("%d", (a>>i)&1);
		if(i%4==0)
			printf(" ");
	}
}


그리고 if 문의 경우에는 4bit씩 끊어서 출력을 하기 위해 추가한 내용이다.

'컴퓨터 > C 언어' 카테고리의 다른 글

int형 변수를 이진수로 출력하기  (0) 2016.09.24
[입력-형성평가5]  (0) 2014.10.07
[입력-형성평가4]  (0) 2014.10.07
[입력-형성평가3]  (0) 2014.10.07
[입력-형성평가2]  (0) 2014.10.07
[입력-형성평가1]  (0) 2014.10.07
블로그 이미지

humit

평범하면서 주변에서 흔히 볼 수 있는 공대생

Tag ,

댓글을 달아 주세요