티스토리 뷰

코딩 공부/C 언어

C언어 기초 : 변수

코딩류 2021. 1. 24. 17:41
반응형

이전 글

2021/01/17 - [코딩 공부] - C 언어 기초 : 2진수, 8진수, 16진수 등등... 진법

 

C 언어 기초 : 2진수, 8진수, 16진수 등등... 진법

이전 글 2020/12/20 - [코딩 공부] - C언어 기초 : 서식 문자(제어 문자) C언어 기초 : 서식 문자(제어 문자) 이전 글 2020/12/20 - [코딩 공부] - C언어 기초 : Escape 문자 이번 포스트에서는 서식 문자에 관해

hgu-can.tistory.com

 

1. 변수는 뭘까?

 

변하는 수라서 변수라고 부르며 프로그래밍에서는 정보를 저장하는 공간입니다. 

하나의 변수에는 하나의 정보만 담을 수 있는데 변하는 수이기 때문에 담아 놓은 정보의 수를 증가시키거나 감소시키는 건 가능합니다. 

 

예를 들면 a 라는 이름을 가진 변수에 1을 저장했는데 1을 더해서 2로 증가시키거나 1을 빼서 0으로 감소시키는 건 가능합니다. 

하지만 a 변수에 이미 1을 저장했는데 그 다음 줄에서 '댕댕'이라는 이름을 또 저장하는 것은 가능하지 않습니다. 

 

 

2. 변수의 선언 규칙

 

변수의 이름을 지정하는 것을 변수를 선언한다고 하는데 아무 말이나 변수의 이름으로 사용할 수 없고 정해진 규칙이 있습니다. 

왜냐면 printf 같은 것은 컴퓨터한테 출력하라는 명령은 내릴 때 쓰는 말인데 변수 이름으로 써 버리면 컴퓨터 입장에서는 이게 출력을 하란건지 그냥 변수 이름을 printf로 하겠다는 건지 헷갈리잖아요?

컴퓨터는 생각보다 똑똑하지 않고 저렇게 쓰면 코드를 보는 사람도 헷갈리기 때문에 변수를 선언하는 데에 규칙을 정하게 되었습니다. 

 

- 중복된 이름을 변수로 사용할 수 없다. 

한 반에 같은 이름을 가진 학생이 여러 명 있을 수 있지만 컴퓨터한텐 안 됩니다... a1, a2 이런 식으로 다른 정보를 담는 변수라면 한 글자라도 다르게 써 주어야 합니다. 

 

- 변수명은 영문자, 숫자, 언더바(_)를 사용할 수 있다. 

lilyKim_3 이런 식으로 변수 이름을 만들 수 있습니다. 

변수 이름에 한글 사용도 가능하긴 한데 잘 쓰지는 않는 편입니다. 

프로 아메리칸인 것처럼... 영어로 변수명을 만들도록 합시다...^^

 

- 변수명의 첫 글자는 반드시 영문자 혹은 언더바(_)여야 한다.

변수를 선언할 때 _galbi 처럼은 만들 수 있습니다. 

하지만 2number 처럼 맨 앞에 숫자를 쓸 수는 없습니다. 

 

- C언어의 예약어는 변수명으로 사용할 수 없다. 

맨 처음에 예로 들었던 것처럼 printf같은 명령을 내릴 때 사용하는 예약어는 변수 이름으로 사용할 수 없습니다. 

마찬가지로 / 나 () 같은 것들도 명령문을 쓸 때 사용하는 것들이기 때문에 변수명에 사용할 수 없습니다. 

(^-^)// 이런 옛날 인소 느낌 이모티콘 안 됩니다.. ㅋㅋㅋ

 

- 변수명에서는 알파벳의 대, 소문자가 구분된다. 

컴퓨터는 kim 과 Kim 을 다른 변수라고 인식합니다. 

 

- 변수명 내에 공백을 둘 수 없다. 

Lily Kim 이런 식으로 띄워쓰기를 할 수 없습니다. 

변수명에서 띄워쓰기를 표현하고 싶다면 Lily_Kim 처럼 언더바(_)를 사용합시다. 

 

- 변수명에는 의미가 있어야 한다. 

단순히 a1, a2, a3, ... 이런 식으로 만들면 나중에 이게 무엇을 위해 만든 변수인지 헷갈리게 됩니다. 

나혼자 코딩하고 끝나는 것이 아니라 다른 사람들과 함께 프로젝트를 진행하게 되는 경우가 많기 때문에 서로서로 좋은 가독성을 위해 변수명을 만들 때 어떤 정보를 담고 있는 지 짐작할 수 있게 만듭시다. 

혼자 취미로 하는 것이라도 인터넷에 내 코드에서 뭐가 잘못됐는지 물어보려면 보는 사람이 알아보기 쉬운 변수명을 만들어야 합니다. 

 

 

3. C언어 예약어

 

auto double int struct
break else Long switch
case enum register typedef
char exturn return union
const float short unsigned
continue for signed void
default goto sizeof volatile
do if static while

 

C언어의 예약어에는 이런 것들이 있는데 지금 다 외울 필요는 없고 하나씩 배우다 보면 자연스럽게 알게 됩니다.

그냥 이런 것들이 있다 정도로만 알고 계시면 됩니다. 

가장 중요한 것은 C언어의 예약어들은 변수명으로 사용할 수 없다는 것!

그렇기 때문에 위의 표에 있는 것들은 변수명으로 사용할 수 없습니다. 

 

이 포스트에선 변수를 만들 때엔 직관적으로 누가 봐도 알아보기 쉬운 이름을 만드는 것이 가장 중요하다는 것을 알고 넘어가시면 됩니다. 

이 변수를 무슨 용도로 쓰려고 만들었느냐를 한 눈에 알 수 있는 이름으로요!

처음 만들때는 변수명을 대충 써도 내가 다 기억하고 알아볼 거 같지만 시간 지나서 옛날에 쓴 코드를 다시 열어보면 내가 만든 변수명인데도 뭐가 뭔지 헷갈리거든요...

 

그럼 다음 포스트에선 자료형에 관한 내용으로 돌아오겠습니다. 

다음 포스트에서 만나요~^^

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
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
글 보관함