一个小小的错误,害我浪费了半天时间。。
筒子们,不能用sizeof(结构体指针)啊。
虽然我深谙此理,可是还是由于粗心犯下了如此不可饶恕的错误。。
定义结构体时是这样的:
typedef struct tagOnLineNode
{
int nId;
int new_fd;
struct sockaddr_in ClientAddr;//online client host addr
struct tagOnLineNode *onLineNext;
P_MYLISTNODE_T myNext;
}ONLINENODE_T, *P_ONLINENODE_T;
用的时候follow习惯了,脑袋可能瞬间短路没思考:
P_ONLINENODE_T onlineNode = (P_ONLINENODE_T) malloc(sizeof(P_ONLINENODE_T));
从此劫难铸成。
记之,不可再犯!