#define NULL ((void *)0)
잘은 모르겠는데 아마
void * Name;
Name = NULL;
이렇게 되는것 같은데
void포인터변수를 초기화(생성) 하기위해 NULL 0 이 아닌 NULL (void *) 0 형변환 한것같은데...
어느책에보니 이렇게 되어있습니다.
class University {
char * Name;
public:
University() {
Name = (char *)0;
.......
....
...
허덥 님이 쓰신 글 :
: #ifndef _LINUX_STDDEF_H
: #define _LINUX_STDDEF_H
:
: #undef NULL
: #if defined(__cplusplus)
: #define NULL 0
: #else
: #define NULL ((void *)0)
: #endif
:
: #undef offsetof
: #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
:
: #endif
:
: 이 소스에서 해석이 안되는 부분이 있어서 그러는 되요.. 아시는 분있으면
: 도움 좀 주세요..
: 제가 해석이 안되는 부분은요..
: #define NULL ((void *)0)부분 하고요..
: #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
: 이 부분입니다.. 설명 해주시는 분 있으면 고맙겠습니다.
: ^^
:
|