여기서 말하는 상수는 정확히는 ‘심볼릭 상수’이다. (리터럴 상수는 직접 정의해서 사용하는 것이 아니니…)

<aside> 💡 심볼릭 상수(symbolic constant) (기호 상수) 프로그램 실행 중 변할 수 없는, 고정된(constant) 값을 나타내는 기호화 된 상수. 쉽게 얘기해서 특정 상수 값에 변수처럼 이름을 부여한다고 생각하면 된다. 이렇게 특정한 값에 직접 이름을 붙여 사용하면 보다 코드의 가독성을 높일 수 있다.

</aside>

매크로 상수 (macro constant)

Untitled

매크로 상수 - 문자열(string)

#define MY_STR "This is constant string"

이때 MY_STR은 문자열 상수의 주소값이 된다.
printf의 형식지정자 %s, %p로 각각 MY_STR을 출력해보면 쉽게 알 수 있다.  

enum (열거형) (관련있는 상수 여러개 선언 원할때 특히 유용)

Untitled

참고. 정의한 심볼릭 상수와 대응되는 값과의 관계

예를 들어 어떤 소스 코드 맨 상단에다가

#define PENGDORI 153

와 같이 매크로 상수를 정의했다고 해보자.