구조체안의 구조체
글쓴이: ddong90 / 작성시간: 목, 2010/01/21 - 3:13오후
구조체안의 구조체를 선언한후 안에 들어있는 구조체에 메모리를 할당하는방법
channel이라는 구조체에 user라는 구조체를 하나더 만들어
각 channel마다 user를 받아서 출력하는 것을 해보려는데요
연결리스트를 사용하는 초기설정에서...
typedef struct _user
{
char user_name[20];
struct _user *user_next;
}user;
typedef struct _channel
{
int user_count;
char channel_name[20];
struct _channel *channel_next;
user *user_head, *user_tail;
}channel;
channel *channel_head, *channel_tail;
void init_user(void)
{
user_head=(user*)malloc(sizeof(user));
user_tail=(user*)malloc(sizeof(user));
user_head->user_next=user_tail;
user_tail->user_next=user_tail;
}
//이부분에서 channel안의 u_head에 메모리를 할당하고 싶은데 이렇게가 아닌거 같아서요
void init_channel(void)
{
channel_head=(channel*)malloc(sizeof(channel));
channel_tail=(channel*)malloc(sizeof(channel));
channel_head->channel_next=channel_tail;
channel_tail->channel_next=channel_tail;
}Forums:


channel_head 를 먼저
channel_head 를 먼저 할당하셔서 user_head 포인터 공간을 확보하신다음
channel_head=(channel*)malloc(sizeof(channel));
channel_head.user_head=(user*)malloc(sizeof(user));
하셔야지요.
댓글 달기