17. 열거형

Yongs12 ㅣ 2023. 6. 8. 18:00

열거하다 : 여러 가지 예나 사실 등을 하나하나 죽 늘어놓음
라는 뜻으로 enum은 할당된 정수 값으로 이름이 지정된 상수 집합을 만들 수 있는 사용자 정의 자료형으로 고정된 값 집합을 나타낼 때 사용한다.

열거형 예시

// enum 키워드 사용
// 1 ~ 12 월을 열거
enum Months
{
  January = 1,
  February,
  March,
  April,
  May,
  June,
  July,
  August,
  September,
  October,
  November,
  December
};


January = 1 을 넣음으로써 그 다음부터는 순차적으로 + 1 씩 증가 되어 값이 들어간다.

// 값을 넣지 않으면 0 부터 시작해서 + 1 씩 증가하여 대입 된다.
enum Colors 
{
    Red,	// 0
    Green,	// 1
    Blue,	// ...
    Yellow,
    Magenta,
    Cyan,
    Black,
    White
};
// 메뉴 같은 것에 의미 있는 상수를 사용하여 읽기 쉬운 코드로 만들어준다.
enum MenuOptions 
{
    NewGame = 1,
    LoadGame,
    Options,
    Quit
};


int main(void)
{
    enum MenuOptions gameMenu;
    printf("1. New Game\n");
    printf("2. Load Game\n");
    printf("3. Options\n");
    printf("4. Quit\n");
    printf("메뉴 선택 :  ");
    scanf("%d", &choice);
    
    switch(choice) 
    {
        case NewGame:
            printf("Starting a new game...\n");
            break;
        case LoadGame:
            printf("Loading a saved game...\n");
            break;
        case Options:
            printf("Opening options menu...\n");
            break;
        case Quit:
            printf("Quitting the game...\n");
            break;
        default:
            printf("메뉴에 없습니다.\n");
            break;
    }
    return 0;
}

'C, C++' 카테고리의 다른 글

19. C++ 언어  (0) 2023.06.10
18. 전처리기 지시문  (0) 2023.06.09
16. 파일 입출력  (0) 2023.06.07
15. 공용체  (0) 2023.06.06
14. 구조체  (0) 2023.06.04