[완료]매크로 토큰 관련 질문.
글쓴이: 황기천 / 작성시간: 목, 2011/10/06 - 2:20오후
#define IDC_RADIO_ASPECT_RATE 1042
#define IDC_RADIO_ASPECT_RATE2 1050
SUM_NAMEVAL(Name, cnt) (Name ## cnt)
Case A. SUM_NAMEVAL(IDC_RADIO_ASPECT_RATE, 2)
결과값=> IDC_RADIO_ASPECT_RATE2
Case B.
int j=2;
SUM_NAMEVAL(IDC_RADIO_ASPECT_RATE, j)
결과값=> IDC_RADIO_ASPECT_RATEj
제가 원하는건 SUM_NAMEVAL 의 두번째 인자에 변수을 넣어, Case A.와 같은 결과 값을
얻고 싶습니다. 방법이 없을 까요?
Forums:
실수로 글을 2개나 올렸네요. 어떻게 삭제 하는지
실수로 글을 2개나 올렸네요. 어떻게 삭제 하는지 모르겠어요. 삭제하는 방법 알려 주시면 삭제 하도록 하겠습니다.
불가능합니다. 매크로
불가능합니다. 매크로 확장(SUM_NAMEVAL(...)을 IDC_RADIO_...로 바꾸고, 그걸 다시 1042 등의 토큰으로 바꾸는 과정)은 컴파일 전처리 단계에서 일어납니다. 그런데 그 시점에서는 변수 j의 값을 알 수가 없습니다. 변수 값은 보통 런타임에서야 알 수 있게 되죠.
$PWD `date`
댓글 달기