레이블이 enum인 게시물을 표시합니다. 모든 게시물 표시
레이블이 enum인 게시물을 표시합니다. 모든 게시물 표시

2020년 1월 18일 토요일

enum을 사용하여 간단하게 switch case문 구현하기

enumeration data type(열거 데이터 유형)

enum은 아래와 같은 데이터 유형을 사용한다.

enum 열거형 이름 {원소1=1, 원소2, 원소3, 원소4, ····, 원소n} 변수1, ···, 변수n;

다음 예제는 enum을 사용하여 switch case를 구현한 예제 코드 이다.

웹컴파일러 : https://www.onlinegdb.com/

(예제코드)

#include <stdio.h>

enum xSTAGE_Filter_t {Step1_Standby=1, Step2_Calcuration, Step3_Run, Step4_Reset} xStage_Filter;

int nCount = 0;

int main()
{
    xStage_Filter = Step1_Standby;
    while(1)
    {
        nCount++;
        switch(xStage_Filter)
        {
            case Step1_Standby:
                printf("Stage = %d[%d]\n", xStage_Filter,nCount);
                xStage_Filter = Step2_Calcuration;
                break;
            case Step2_Calcuration:
                printf("Stage = %d[%d]\n", xStage_Filter,nCount);
                xStage_Filter = Step3_Run;
                break;
            case Step3_Run:
                printf("Stage = %d[%d]\n", xStage_Filter,nCount);
                xStage_Filter = Step4_Reset;
                break;
            case Step4_Reset:
                printf("Stage = %d[%d]\n", xStage_Filter,nCount);
                xStage_Filter = Step1_Standby;
                break;
        }     
    }
}

(실행결과)
Stage = 1 [1]
Stage = 2 [2]
Stage = 3 [3]
Stage = 4 [4]
Stage = 1 [5]
Stage = 2 [6]
Stage = 3 [7]
Stage = 4 [8]
Stage = 1 [9]
....
....

[C++] 연습문제 1-2

 /****************************************************************************** - 피트(feet)를 인치(inch)로 변환시켜주는 프로그램을 작성 - 사용자로부터 피트를 입력받아 인치로...