티스토리 뷰

안녕하세요, IT디자이너입니다.

 

이번에는 열거형의 정의와 의미에 관하여 포스팅하도록 하겠습니다.

 

열거형은 둘 이상의 연관된 int 타입의 상수형 자료형을 선언하여 프로그램의 가독성을 높이는데 유용한 자료형입니다.

 

enum 의 사용방법을 보여드리도록 하겠습니다.

#include <stdio.h>


enum color {
	red = 0,blue,white,black
};


int main()
{

printf_s("%d",red);

}

enum은 구조체 사용방법과 많이 유사합니다. struct를 사용하는 대신 enum을 입력하며, 첫번재 변수부터 마지막 변수까지 +1씩 증가하는 형태입니다. 

 

red == 0, blue == 1, white == 2, black ==3 이며, main 함수안의 소스코드를 출력시 0이 출력될 것입니다. 

 

 

 

#include <stdio.h>


enum color {
	red = 0,blue = 3 ,white,black
};


int main()
{

printf_s("%d",red);

}

 

위 소스코드는 enum 값중 blue를 3으로 초기화하였습니다. 중간에 다른 숫자로 초기화할 경우 해당 숫자에서 +1씩 증가하여,

 

red == 0, blue ==3, white ==4, black ==5의 형태로 초기화된 것을 확인할 수 있을 것입니다. 

 

 

 

이번에는 실제로 활용되는 부분으로서 예제 소스코드를 보여드리겠습니다.

#include <stdio.h>


typedef enum color {

	red,blue,white,black

}Color;

void selectColor(Color cr) {

	switch (cr) {
	case red:
		printf_s("레드를 선택하였습니다.");
		break;
	case blue:
		printf_s("블루를 선택하였습니다.");
		break;
	case white:
		printf_s("화이트를 선택하였습니다.");
		break;
	case black:
		printf_s("블랙을 선택하였습니다.");
	}
}


int main()
{

	Color cr;

	scanf_s("%d", &cr);
	
	selectColor(cr);

}

 

관련된 둘 이상의 데이터를 typedef를 이용해서 enum 자료형을 정의하였습니다. 함수를 정의하는 과정에서 매개변수의 데이터 타입을 enum으로서 조금 더 가시적으로 표현하는 방법입니다. 

 

또한 사용자의 입력값 또한 enum 데이터 타입을 입력을 받는다는 것을 명시적으로 정의하였습니다. 

 

프로그래머는 다른 사람과 협업을 하는 경우가 많기 때문에 다른 프로그래머가 보고 쉽게 이해할 수 있는 코드가 좋은 코드라고 할 수 있습니다. 

 


이상 IT디자이너였습니다. 

 

감사합니다. 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함