본문 바로가기

Engineering student/코딩 (with 챗 GPT)

c++인강 독학하기 (비트연산자, 변수)

c++

1. 비트 연산자

비트 연산자는 잊어먹기 쉽기 때문에 자주 상기해주어야 합니다.

<<는 왼쪽으로 한 칸씩 이동, >>는 오른쪽으로 이동시키는 코드입니다.

 

아래 간단한 예시를 들어보겠습니다.

 

 

unsigned char byte = 13;을 하면

이 수를 2진수로 나타내면 1101이고

byte <<=1; 코드를 입력하면

왼쪽으로 한 칸씩 이동하므로 2진수로 나타내면 11010 이고 그 값은 26이 됩니다.

(따라서 byte <<= n; 을 입력하면 이는 곧 2^n의 배수를 나타냅니다. 이해가 어렵다면 아래 이미지를 참고하길 바랍니다.)

 

byte >> =1; 를 입력하면 오른쪽으로 한칸씩 이동하므로 0110 그 값은 6이 됩니다.

(따라서 byte >>= n; 를 입력하면 이는 곧 2^n을 나눈 몫을 나타냅니다.)

비트 연산자

&, |, ^, ~는 비트단위로 연산을 진행하는 코드입니다.

&는 둘 다 1인 경우가 1

|는 둘 중 하나라도 1이면 1

^는 같으면 0, 다르면 1

~는 1은 0으로, 0은 1로 나타냅니다.

 

 

변수

변수는 지역 변수, 전역 변수, 정적 변수, 외부 변수가 있습니다.

이번 게시글에서는 지역 변수와 전역 변수만 다루겠습니다.

 

우선 지역변수는 괄호 안에 선언된 변수를 말합니다.

int iName = 100;

iName;

{

{

}

}

여기 괄호 안에 선언된 변수들은 모두 지역 변수이고 그 외의 선언된 변수는 전역 변수입니다.

변수명 규칙은 예를 들어 변수 이름이 같다면 ( 예를 들어 iName라는 변수이름이 지역 변수에도 있고

전역 변수에도 있다면 지역에서는 iName을 지정하면 지역 변수 내의 iName을,

지역이 아닌 곳에서는 전역 변수의 iName을 지정하는 규칙입니다.)

변수