00:16 구조체
01:55 [실습] 회원 구조체 정의
05:36 [실습] 구조체를 입력 인자로 전달할 때 주의할 점
08:04 [실습] 구조체 포인터를 입력 인자로 전달
08:54 [실습] 구조체 비트 필드
11:11 공용체
11:35 [실습] 구조체와 공용체 메모리 크기 비교
12:44 [실습] 공용체 사용
14:20 열거형
14:50 [실습] 성별을 열거형으로 정의
15:47 [실습] 열거형 표현한 값 확인
열거형은 표현할 수 있는 값의 종류를 열거하는 형식이예요.
가령 성별을 관리할 때 int 형식을 사용하여 0은 여성, 1은 남성을 표현하기로 약속할 수 있겠죠.
하지만 다른 개발자가 코드를 이해하기 어려울 수 있어요.
이 때 열거형을 사용하면 가독성(쉽게 읽을 수 있는 성질) 높은 프로그램을 작성할 수 있어요.
◈ 성별을 표현할 수 있는 Gender 열거형 정의
#include <stdio.h> typedef enum _Gender Gender; enum _Gender{ FEMALE, MALE}; int main() { Gender g = FEMALE; if(g == FEMALE) { printf("여성\n"); } else { printf("남성\n"); } return 0; }
◈ 실행 결과
여성
열거형을 정의할 때 열거하는 이름과 대응하는 값을 지정할 수도 있어요.
만약 값을 지정하지 않으면 앞에 지정한 값에 1 증가한 값으로 지정하죠.
그리고 맨 처음 열거한 이름에 값을 지정하지 않으면 0으로 지정한답니다.
◈ 열거형의 값 지정
#include <stdio.h> enum _Test { A, B, C=5, D, E=3, F=3, G }; int main() { printf("A:%d B:%d C:%d D:%d E:%d F:%d G:%d \n",A, B, C, D, E, F,G); return 0; }
◈ 실행 결과
A:0 B:1 C:5 D:6 E:3 F:3 G:4
그리고 하나의 프로그램에 정의할 상수가 많이 있으면 종류에 따라 열거형으로 묶어 정의하면 가독성을 높일 수 있어요.