생활
C 비트 연산 관련 질문입니다.
안녕하세요.
비트 연산자와 배열 원소에 대해서 궁금한 부분이 있습니다.
#include <stdio.h>
int main() {
int decimal = 0;
int binary[4] = { 1,1,0,1 };
int pos= 0;
int i;
for (i = sizeof(binary) / sizeof(int) - 1; i >= 0; i--) {
if (binary[i] == 1)
decimal += 1 << pos;
pos++;
}
printf("%d\n", decimal);
return 0;
}
main()의 for loop에서
decimal += 1 << pos;
이 부분이 이해가 잘 가지 않습니다. 어떤 동작을 하는 걸까요??
1개의 답변이 있어요!