아하
생활

생활꿀팁

느긋한쇠오리233
느긋한쇠오리233

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개의 답변이 있어요!