define 사용중 질문 있습니다.
글쓴이: mailbox20 / 작성시간: 수, 2006/01/04 - 7:53오후
아래 코드가 제가 이해가 안가는 부분 입니다.
함수를 define선언해서 사용하는것은 알고 있습니다.
그런데 아래 코드를 보면, 선언문 오른쪽 { }로 쌓여 있는 부분에서
"\"과 ";"이 들어가는 의미를 모르겠습니다.
===========================================
#define CmDiscoveryReqSend(_p,_m,_t,_i,_n) {\
CM_DISCOVERY_REQ_T *msg__;\
msg__=CmDiscoveryReq_struct(_p,_m,_t,_i,_n);\
bchs_msg_transport(CM_IFACEQUEUE,CM_PRIM, msg__);}
===========================================
그럼 모두들 좋은 하루 되시길~
Forums:
#define CmDiscoveryReqSend(_p,_m,_t,_i,_
#define CmDiscoveryReqSend(_p,_m,_t,_i,_n) {\
CM_DISCOVERY_REQ_T *msg__;\
msg__=CmDiscoveryReq_struct(_p,_m,_t,_i,_n);\
bchs_msg_transport(CM_IFACEQUEUE,CM_PRIM, msg__);}
위의 #define은 CmDiscoveryReqSend(_p, _m, _t, _i, _n)을
다음과 같이 치환합니다.
{
CM_DISCOVERY_REQ_T *msg__;
msg__ = CmDiscoveryReq_struct(_p, _m, _t, _i, _n);
bchs_msg_transport(CM_IFACEQUEUE, CM_PRIM, msg__);
}
윈래 #define은 한 라인으로 제한되지만 "\"을 붙이면 여러
라인에 걸쳐 정의할 수 있습니다. 즉, 다음 라인으로 정의가 연결
된다는 의미이고..
";"은.. 원래 있어야 하는것 아닌가요? { } 블럭 안의 세개의
문장 각각의 끝에 붙였으니까요..
댓글 달기