프로그래밍 언어(Programming Language)/C

C언어(1) - 변수와 상수, 예약어와 식별자

Itscool 2021. 8. 16. 16:59

변수

변수(variable)란 데이터를 저장하기 위해 프로그램에 의해 이름을 할당받은 메모리 공간을 의미합니다. 즉, 변수란 데이터를 저장할 수 있는 메모리 공간을 의미하며, 이렇게 저장된 값은 변경될 수 있습니다. 다음과 같이 선언하며, C언어에서 변수를 사용하려면 다음과 같이 초기화(변수에 값을 넣어주는 것)를 해주어야 합니다.

변수(Variable)

{Data type} {Var name} = {Value}; 와 같이 선언하며, 초기화 없이 변수를 사용할 경우, 변수 안에 쓰레기 값이 들어가게 되어 오류를 발생시킵니다.

※ 정적 변수(Static Variable): C언어에서 정적 변수란 main method 바깥에 선언된 변수로, 초기화를 해주지 않으면 쓰레기 값이 아닌 0을 값으로 가지게 됩니다.

정적 변수(Static Variable)

상수

상수(constant)는 프로그래밍 언어에서 프로그램이 실행되는 동안 값이 고정되어 변경할 수 없는 메모리 공간을 의미합니다.

상수(Constants)

const {Data type} {Var name} = {Value}; 와 같이 선언하며, 변경하려고 시도한다면 다음과 같이 에러가 뜹니다

자료형

자료형(Data type)은 컴퓨터 과학과 프로그래밍에서 실수치, 정수, 불린 자료형 따위의 여러 종류의 데이터를 식별하는 분류로서, 더 나아가 해당 자료형에 대한 가능한 값, 해당 자료형에서 수행을 마칠 수 있는 명령들, 데이터의 의미, 해당 자료형의 값을 저장하는 방식을 결정합니다. C언어에서 변수와 상수에 담길 수 있는 자료형은 다음과 같습니다. 

정수 표현 방법

ex. 1) 19

부호 64 32 16 8 4 2 1
0 0 0 1 0 0 1 1

부호 절댓값 방식

ex. 2) -27

부호 64 32 16 8 4 2 1
1 0 0 1 1 0 1 1

 

 

컴퓨터가 연산을 수행하기에 부호 절댓값 방식이 적합하지 않으므로, 2의 보수 방식을 사용합니다. 2의 보수 방식은 정수의 음수를 만들 때 사용되는 방식으로, 부호 절댓값 방식에서 각 자리 숫자를 뒤집기(0은 1로, 1은 0으로)한 후, +1 을 해주는 방식입니다. 이와 같은 2의 보수 방식을 사용하면, 덧셈 연산만으로 양수와 음수를 연산할 수 있습니다. 

ex. 3) 19 - 27 = -8

19: 00010011

-27: 10011011 -> 01100101

다음은 19 - 27을 이진수 2의 보수 방식을 활용하여 연산하는 과정입니다.

0 0 0 1 0 0 1 1
0 1 1 0 0 1 0 1
0 1 1 1 1 0 0 0

01111000 -> 10000111 + 1 -> 10001000 = -8

 

예약어

예약어(Resolved Word)는 컴퓨터 프로그래밍 언어에서 이미 문법적인 용도로 사용되고 있기 때문에 식별자로 사용할 수 없는 단어들입니다. 예를 들어 C에서 return은 변수명이나 함수명으로 사용할 수 없습니다.

식별자

식별자(Identifier)란 변수나 함수 등을 고유하게 식별 및 구별할 수 있도록 붙이는 이름입니다. C언어의 경우, 식별자의 이름에는 로마자 대문자, 소문자와 숫자, 밑줄 문자만을 사용할 수 있습니다.