结构体定义的问题
struct MSG_HEAD
{
WORD dwCmdId;//命令ID
DWORD dwLength;//整个数据包长度=数据包头部+数据包体
};
struct MSG_LOGIN
{
BYTE szUserName;//用户登录ID
BYTE szPassword;//登录密码
};
struct MSG_LOGIN_RESP
{
BYTE dbResult;//登录结果:0=成功,1=用户名或密码错
};
struct MSG_UP
{
DWORD dwLength;//后面内容字段的长度
BYTE szContent[256];//内容,不等长,长度由dwLength指定
};
struct MSG_DOWN
{
BYTE szSender[12];//消息发送者
DWORD dwLength; //后面内容字段的长度
BYTE szContent[256];//内容,不等长,长度由dwLength指定
};
struct MSG_STRUCT
{
MSG_HEAD MsgHead;
union
{
MSG_LOGIN Login;
MSG_LOGIN_RESP LoginResp;
MSG_UP MsgUp;
MSG_DOWN MsgDown;
};
};
全部是自定义的结构体,红色部份出现错误:
error C2061: syntax error : identifier 'MSG_HEAD'
error C2061: syntax error : identifier 'MSG_LOGIN'
error C2061: syntax error : identifier 'LoginResp'
error C2061: syntax error : identifier 'MsgUp'
error C2061: syntax error : identifier 'MsgDown'
求解决 struct
[解决办法]
struct MSG_STRUCT
{
struct MSG_HEAD MsgHead;
union
{
struct MSG_LOGIN Login;
struct MSG_LOGIN_RESP LoginResp;
struct MSG_UP MsgUp;
struct MSG_DOWN MsgDown;
};
};
[解决办法]
看编译类型
按照C文件编译需要使用结构前,需要标识为 struct
如果按照C++文件编译就不需要