기본 패턴
c
enum Status {
STATUS_OK,
STATUS_WARN,
STATUS_ERROR
};
typedef unsigned long ulong;설명
enum은 의미 있는 이름을 가진 정수 상수 집합을 만들 때 유용합니다.- 코드에 숫자
0,1,2를 흩뿌리는 것보다 상태 이름을 직접 쓰면 가독성이 훨씬 좋아집니다. typedef는 기존 타입에 별칭을 붙이는 기능이지, 새로운 독립 타입을 만드는 기능은 아닙니다.- 구조체 선언과
typedef를 함께 써서 긴 타입 이름을 줄이는 패턴도 매우 흔합니다.
짧은 예제
c
#include <stdio.h>
enum Status {
STATUS_OK,
STATUS_FAIL
};
int main(void) {
enum Status result = STATUS_OK;
if (result == STATUS_OK) {
printf("success\n");
}
return 0;
}빠른 정리
| 항목 | 설명 |
|---|---|
enum | 이름 있는 정수 상수 집합 |
| 상태 표현 | 코드 의미를 숫자보다 명확하게 드러냄 |
typedef | 기존 타입의 별칭을 만듦 |
| 구조체 별칭 | typedef struct ... Name; 패턴이 흔함 |
| 타입 안정성 | typedef는 별칭일 뿐이라 완전한 새 타입은 아님 |
주의할 점
enum 값은 결국 정수로 다뤄지므로 문자열처럼 출력되지는 않습니다. 화면에 이름을 보여 주고 싶다면 별도의 매핑 테이블이나 switch가 필요합니다.