본문 바로가기

IT/modern_c

Modern C에서 이름있는 배열선언과 활용

반응형
#include <stdlib.h>
#include <stdio.h>

int main(void){
    
    enum corvid { magpie, raven, jay, corvid_num, };
    char const*const bird[corvid_num] = {
        [raven] = "raven",
        [magpie] = "magpie",
        [jay] = "jay",
    };
    
    for(unsigned i=0;i<corvid_num;++i){
        printf("Corvid %u is the %s\n", i, bird[i]);
    }
    return EXIT_SUCCESS;
}

핵심 포인트!

1. enum, 배열 선언시 마지막에 콤마(,) 를 써도 오류가 안난다.

2. enum 배열에 마지막 선언값은 크기값으로 활용한다 ( corvid_num )

반응형