Notice
Recent Posts
Recent Comments
Link
«   2026/04   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30
Tags
more
Archives
Today
Total
관리 메뉴

뭐라도 쓰겠지

25.03.05 / 변수의 규칙 본문

프로그래밍

25.03.05 / 변수의 규칙

김데피 2025. 3. 5. 15:43

프로그래밍에서 변수란 변하는 수 혹은 그 수가 저장되는 공간을 말한다. 

int a = 10;
자료형 변수명 = 초기값;

위의 모양으로 선언하며 생성과 동시에 초기화 (Initialization)하는 것을 권장한다. 모든 변수는 각자의 고유한 메모리 주소를 가진다. 그런데 만약 초기화를 하지 않게 되면 할당받은 주소에 남아있던 쓰레기 값이 변수에 들어가 원하지 않는 결과를 도출할 수도 있다. 비유하자면 흡연자가 살던 집에 비흡연자가 들어갔는데 집에 담배 냄새가 난다면 비흡연자의 옷에도 담배냄새가 배지 않겠는가. 오류의 방지와 가독성을 위해 생성과 동시에 초기화 하는 것을 권장하는 것이다.

 

변수를 선언할 때 지켜야 할 몇가지 규칙이 있다.

int same = 0;
int same = 1;

이런 식으로 같은 이름의 변수는 2개 이상 만들 수 없다. 만약 지역 변수라면 다른 지역 내에서 그 변수명을 다시 사용할 순 있지만 전역 변수의 경우엔 사용이 불가하니 참고하자.

 

int same = 1;
int Same = 2;

변수명은 대소문자를 구분한다. 가독성이 좋지 않기 때문에 사용하지 않는 걸 권장한다.

 

int 0num = 0;
int num0 = 0;

변수명을 지을 땐 숫자로 시작해선 안된다. 해당 이름의 경우 컴퓨터가 해당 변수가 변수인지, 상수인지, 정수인지 구분하지 못하기 때문이다. 영어 뒤에 숫자를 붙이는 경우는 가능하다.

 

int num1, num2 = 0;
int num1 = 0, num2 = 0;

변수를 여러개 동시에 선언할 수 있지만 초기화는 각각 해줘야 한다. 1번 문장처럼 쓴다고 num1, num2가 동시에 0으로 초기화되지 않는다는 뜻.

 

int @num1 = 0;
int n u m 1 = 0;

int _num1 = 0;

변수명엔 몇몇 특수문자를 제외한 특수문자나 공백이 들어가선 안된다. 사용할 수 있는 특수문자엔 _ 와 $ 가 있는데 각자의 용도가 있으니 남용해선 안된다.

 

int player_health = 20;

변수명은 그 변수가 어디에 쓰이는지 나타나는게 좋다. 코드 이해에 도움이 되고 가독성도 높여준다.

 

int variables = 0;
void Function() {}

변수명은 보통 소문자로 시작하고, 함수명은 대문자로 시작하는 경우가 많다.

 

int playerHealth = 0;
int player_health = 0;
int PlayerHealth = 0;

여러 단어가 이어지는 변수명의 표기법엔 여러가지가 있다.

1번째 문장은 단어가 바뀔때마다 대문자로 입력한다. 여러개 이어진 모습이 낙타의 혹을 닮았다 하여 카멜 표기법 (Camel Case)이라 부른다.

2번째 문장은 단어 사이사이에 _ (언더스코어, 언더바)를 입력한다. 언더바가 이어진게 뱀을 닮아 스네이크 표기법 (Snake Case)이라 한다.

3번째 문장은 파스칼 표기법 (Pascal Case)로 각 단어의 시작을 대문자로 입력한다. 클래스나 네임스페이스를 표기할 때 많이 사용한다.

 

추가로 과거에 MS에서 사용하던 헝가리안 표기법이라는게 있는데 현재 IDE의 발전으로 변수의 쓰임새를 찾는게 쉬워졌기 때문에 MS에서도 현재는 사용하지 않는 것을 권고한다.

접두어 데이터 타입
b byte, boolean
n int, short
i int, short (주로 인덱스로 사용)
c int, short (주로 크기로 사용)
l long
f float
d, db double
ld long double
w word
dw double word
qw quad word
ch char
sz NULL로 끝나는 문자열
str C++ 문자열
arr 배열 (문자열 제외) : 다른 접두어와 조합 가능
p 포인터 (16비트, 32비트) : 다른 접두어와 조합 가능
lp 포인터 (32비트, 64비트) : 다른 접두어와 조합 가능
psz NULL로 끝나는 문자열을 가리키는 포인터 (16비트, 32비트)
lpsz NULL로 끝나는 문자열을 가리키는 포인터 (32비트, 64비트)
fn 함수 타입
pfn 함수 포인터 (16비트, 32비트)
lpfn 함수 포인터 (64비트)

'프로그래밍' 카테고리의 다른 글

25.03.06 / 숏서킷  (0) 2025.03.06
25.03.05 / 2진수의 음수 표기법  (0) 2025.03.05
25.03.04 / 연산자  (0) 2025.03.04
25.03.04-25.03.05 / 자료형  (0) 2025.03.04
25.03.04 / 용어 정리 1  (1) 2025.03.04