..

Search

8) 상수

8) 상수

상수


상수(constant)

상수(constant)란 변수와 마찬가지로 데이터를 저장할 수 있는 메모리 공간을 의미합니다.

하지만 상수가 변수와 다른 점은 프로그램이 실행되는 동안 상수에 저장된 데이터는 변경할 수 없다는 점입니다.

 

이러한 상수는 표현 방식에 따라 다음과 같이 나눌 수 있습니다.

 

1. 리터럴 상수(literal constant)

2. 심볼릭 상수(symbolic constant)


리터럴 상수(literal constant)

리터럴 상수(literal constant)는 변수와는 달리 데이터가 저장된 메모리 공간을 가리키는 이름을 가지고 있지 않습니다.

C언어에서는 적절한 메모리 공간을 할당받기 위하여, 기본적으로 변수든 상수든 타입을 가지게 됩니다.

 

리터럴 상수는 타입에 따라 정수형 리터럴 상수, 실수형 리터럴 상수, 문자형 리터럴 상수 등으로 구분할 수 있습니다.

 

1. 정수형 리터럴 상수는 123, -456과 같이 아라비아 숫자와 부호로 직접 표현됩니다.

2. 실수형 리터럴 상수는 3.14, -45.6과 같이 소수 부분을 가지는 아라비아 숫자로 표현됩니다.

3. 문자형 리터럴 상수는 'a', 'Z'와 같이 따옴표('')로 감싸진 문자로 표현됩니다.

 

예제

123  // 정수형 리터럴 상수

3.14 // 실수형 리터럴 상수

'a'  // 문자형 리터럴 상수


심볼릭 상수(symbolic constant)

심볼릭 상수는 변수와 마찬가지로 이름을 가지고 있는 상수입니다.

이러한 심볼릭 상수는 반드시 선언과 동시에 초기화되어야 합니다.

심볼릭 상수는 const 키워드를 사용하거나, 매크로를 이용하여 선언할 수 있습니다.

 

예제

const int MAX = 10; // const 키워드를 이용한 심볼릭 상수

#define MAX 10;     // #define 선행처리 지시자를 이용한 매크로 심볼릭 상수

 

매크로에 대한 더 자세한 사항은 C언어 선행처리기 수업에서 확인할 수 있습니다.

 

C언어 선행처리기 수업 =>


연습문제