본문 바로가기
2학년 2학기/c언어

11-8장 열거형

by kkkkk1023 2024. 11. 12.

열거형이란?

: 정의된 값들만 가질 수 있는 자료형을 만드는 것과 같다. 예를 들어 int는 정수만 받을 수 있고, double을 실수만 받을 수 있는 것처럼말이다.

 

열거형을 만드는 이유는 가독성을 위해서이다.

 

 

 

#include <stdio.h>

enum days { MON, TUE, WED, THU, FRI, SAT, SUN };

// 포인터들의 배열을 만들고 문자열 상수로 초기화한다. 
const char* days_name[] = {
        "monday", "tuesday", "wednesday", "thursday", "friday",
        "saturday", "sunday" };

int main(void)
{
    enum days d;

    // enum days로 타입 캐스팅한 d를 1씩 증가 시키면서 반복
    for (d = MON; d <= SUN; d = (enum days)(d + 1)) {
        printf("%d번째 요일의 이름은 %s입니다\n", d + 1, days_name[d]);
    }
    return 0;
}


/* 
1번째 요일의 이름은 monday입니다
2번째 요일의 이름은 tuesday입니다
3번째 요일의 이름은 wednesday입니다
4번째 요일의 이름은 thursday입니다
5번째 요일의 이름은 friday입니다
6번째 요일의 이름은 saturday입니다
7번째 요일의 이름은 sunday입니다
*/

 

'2학년 2학기 > c언어' 카테고리의 다른 글

12-1장 스트림, 버퍼, 표준 입출력 스트림  (1) 2024.11.18
11-9장 typedef  (1) 2024.11.12
11-7장 공용체  (1) 2024.11.12
11-6장 구조체와 포인터  (0) 2024.11.11
11-5장 const struct  (0) 2024.11.11