본문 바로가기

Programming/ C Language

[C] Enum(열거형)에 대해 알아보자

728x90
반응형

◎ enum(열거형)이란?

   ▷ 이름을 갖는 정수형 상수들을 나열하여 편리하게 사용할 수 있도록 하는 것으로 기재된 순서에 따라 0부터 1씩 증가하게 됩니다.

ex) enum 열거형 이름 { A, B, C, D };

 

◇ 사용 예시

enum color{
	RED, BLUE, ORANGE, GREEN, WHITE, BLACK
};

main(){
	printf("%d\n", RED);
   	printf("%d\n", WHITE);
}

▷ 첫번째인 RED는 0이 나오게 되고, 다섯번째인 WHITE는 4가 나오게 됩니다.

 

◇ 사용 예시2

enum color{
	RED=20, BLUE, ORANGE, GREEN, WHITE, BLACK
};

main(){
	printf("%d\n", RED);
   	printf("%d\n", WHITE);
}

▷ RED가 20으로 초기화되면 RED가 기준점이기에 WHITE는 24가 나오게 됩니다.

▷ 만약 BLUE나 다른곳에 값을 부여하게 된다면 다음의 부여받은 곳 전까지 BLUE부터 1씩 증가한 수가 나오게 됩니다.

enum color{
	RED=20, BLUE=25, ORANGE, GREEN=31, WHITE, BLACK
};

main(){
	printf("%d\n", RED);
   	printf("%d\n", ORANGE);
   	printf("%d\n", WHITE);
}

▷ RED는 20, ORANGE는 BLUE의 25에서 1 증가한 26, WHITE는 GREEN에서 1 증가한 32가 출력되게 됩니다.

 

 

◇ enum도 typedef을 사용할 수 있습니다.

typedef enum color{
	RED=20, BLUE=25, ORANGE, GREEN=31, WHITE, BLACK
}COL;

main() {
	COL co = RED;
	printf("%d\n", co);
}

▷ 결과값으로 RED의 값인 20이 출력됩니다.

 

 

 

 

반응형