读书人

请问个结构体的有关问题

发布时间: 2012-07-28 12:25:13 作者: rapoo

请教个结构体的问题
typedef struct PLNODE
{
unsigned char PlNodeID;//负载节点的ID
unsigned char PlNodeListenPort;//负载节点的监听端口
unsigned char PlNodeSendPort;//负载节点的发送端口
unsigned char PlNodeStatus;//节点状态字
int PlNodeUserNum;//节点当前使用的人数
int MaxUserInPlNode;//该节点的最大用户数
int UserID[MAX_USER];//用户列表
};


typedef struct PLNODE_LIST
{
PLNODE* PtrPlNode[MAX_NODE_EX];//指向负载节点数据结构的指针
int MaxSuportNodeNum;//最大支持的节点数
int AliveNodeNum;//正在使用的节点数
};


c:\code\hoho2\sysctrlnode\structex.h(106) : error C2061: syntax error : identifier 'PLNODE'
c:\code\hoho2\sysctrlnode\structex.h(109) : error C2059: syntax error : '}'
c:\code\hoho2\sysctrlnode\structex.h(120) : error C2061: syntax error : identifier 'PLNODE_LIST'
c:\code\hoho2\sysctrlnode\structex.h(122) : error C2059: syntax error : '}'
c:\code\hoho2\sysctrlnode\recovery.h(45) : error C2143: syntax error : missing ')' before '*'
c:\code\hoho2\sysctrlnode\recovery.h(45) : error C2081: 'SYS_CTRL_NODE_MANAGER' : name in formal parameter list illegal
c:\code\hoho2\sysctrlnode\recovery.h(45) : error C2143: syntax error : missing '{' before '*'
c:\code\hoho2\sysctrlnode\recovery.h(45) : error C2059: syntax error : 'type'
c:\code\hoho2\sysctrlnode\recovery.h(45) : error C2059: syntax error : ')'
c:\code\hoho2\sysctrlnode\recovery.c(11) : error C2143: syntax error : missing ')' before '*'
c:\code\hoho2\sysctrlnode\recovery.c(11) : error C2081: 'SYS_CTRL_NODE_MANAGER' : name in formal parameter list illegal
c:\code\hoho2\sysctrlnode\recovery.c(11) : error C2143: syntax error : missing '{' before '*'
c:\code\hoho2\sysctrlnode\recovery.c(11) : error C2059: syntax error : 'type'
c:\code\hoho2\sysctrlnode\recovery.c(11) : error C2059: syntax error : ')'

很困惑是结构体这样定义有问题吗?

[解决办法]
定义的第一个结构体没有起别名,为什么要使用typedef??把这个typedef去掉吧!
[解决办法]
typedef定义新的类型,你第二个用了typedef但没给新的名字啊,第一个要用的话得价格struct PLNODE * XXXX;

读书人网 >C语言

热点推荐