열거형이란?
: 정의된 값들만 가질 수 있는 자료형을 만드는 것과 같다. 예를 들어 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 |