이런 열거형이 정의가 되어있습니다 <div><br></div> <div>enum cont_list {</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>ABCD = -999,</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>DCBA,</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>ERFF,</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>KKKK = -1900,</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>...</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>/* 이후 수백개의 상수들 */</div> <div>};</div> <div><br></div> <div>그리고 해당하는 열거형의 상수 이름과 동일한 문자열이 다음과 같은 문자열의 배열로 있습니다.</div> <div><br></div> <div><div>static const char *code_str[] =</div> <div>{</div> <div>"KKKK",</div> <div>"ABCD",</div></div> <div>"DCBA",</div> <div>...</div> <div>/* 이후 수백개의 문자열 */</div> <div>};</div> <div><br></div> <div>열거형에 정의된 상수와 문자열 배열에 존재하는 문자열과 순서는 같지않습니다..</div> <div><br></div> <div>여기서 질문은</div> <div><br></div> <div>사용자로부터 입력받으면 , 그에 해당하는 상수 값을 출력을 하고자 합니다.</div> <div><br></div> <div>예를들어, 사용자가 "ABCD"를 입력하면 그에 해당하는 -999 라는 값을 찍어주고 싶습니다..</div> <div><br></div> <div>열거형에 정의한 상수 개수가 너무 많아서 하나하나 switch문으로 작성하기는 어렵습니다</div> <div><br></div> <div>문자열을 그대로 상수의 이름처럼 쓰게 하는 매크로 연산자라던가 함수가 있는지 궁금합니다.</div> <div><br></div> <div>"KKKK" 라는 문자열을 상수이름 ( printf("%d\n", KKKK); ) 처럼 쓰고싶습니다... 방법이 없을까요?</div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.