상수정의 define문에 대해

익명 사용자의 이미지

#define SA struct sockaddr
와 같이 SA를 struct sockaddr로
정의 해주려하는데
두단어로 되어있는데 어떻게 하면되죠?

또한 한줄이 넘어가는경우에는 어떻게 하면되는지알려주세요...

즐거운 추석되시길...

익명 사용자의 이미지

#define 대신 typedef를 사용하시고요.

한 줄 넘어간다면 중괄호로 묶으면 됩니다.

즐거운중추절 wrote..
#define SA struct sockaddr
와 같이 SA를 struct sockaddr로
정의 해주려하는데
두단어로 되어있는데 어떻게 하면되죠?

또한 한줄이 넘어가는경우에는 어떻게 하면되는지알려주세요...

즐거운 추석되시길...

익명 사용자의 이미지

UNIX NETWORK PROGRAMMING 소스에 보니
그냥 이렇게 정의 되어 있네요.
/* Following shortens all the type casts of pointer arguments */
#define SA struct sockaddr

익명 사용자의 이미지

#define 문의 성격이 어떤 예약어 자리에 원하는 내용으로 통째로 대체한다는 성격이
강하기 때문에, 경우 따지지 않고 중괄호를 쓰는 것은 맞지 않습니다. 상황에 따라서 적절히
쓰셔야 합니다. (문자열을 #define으로 하는데 한 줄이 넘어간다면, 백슬래시를 써야겠죠 아마)

오병현 octphial _at_ postech.ac.kr