结构体的定义问题

2019-03-26 12:26发布

我想在结构体中嵌入结构体,不知道这样是否可行?请大家帮我看看指导一下
typedef struct  Register
{
      struct   RegisterRequest   
        {
            short UnitLength;
            byte    UnitType;    //  0x01  is for  RegisterRequest
            short  LocalApplyPort;
           long double   LocalApplyID;
        }tRegisterRequest;
          
     struct   RegisterReply
        {
           short UnitLength;
            byte  UnitType;     //   0x02   is  for  RegisterReply
           byte   Return;       //  return 0  if  it  is  successful,    return other number  if  not  successful
        }tRegisterReply;
         
}tRegister;

此帖出自Linux与安卓论坛
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
14条回答
dontium
1楼-- · 2019-03-26 14:57
嵌套可用,但象楼主位的方法不可取,每个结构体都单独定义会更好一些的。
lcofjp
2楼-- · 2019-03-26 19:37
嵌套没问题,只要你别写出来语法错误就行。
迈尔风随
3楼-- · 2019-03-26 22:23
 精彩回答 2  元偷偷看……
huihuihaha
4楼-- · 2019-03-27 02:41
说得对,只要语法不错误就行
青城山下
5楼-- · 2019-03-27 04:02
lcofjp 发表于 2016-11-18 12:59
嵌套没问题,只要你别写出来语法错误就行。

typedef struct   PlatFormFrame
{
     tFrameType  FrameType;

}tPlatFormFrame;

typedef struct        
{
        tRegister             pRegister ;   

}tFrameType;

typedef struct  Register
{
      struct   RegisterRequest   
        {
            short UnitLength;
            byte    UnitType;    //  0x01  is for  RegisterRequest
            short  LocalApplyPort;
           long double   LocalApplyID;
        }tRegisterRequest;
          
     struct   RegisterReply
        {
           short UnitLength;
            byte  UnitType;     //   0x02   is  for  RegisterReply
           byte   Return;       //  return 0  if  it  is  successful,    return other number  if  not  successful
        }tRegisterReply;
         
}tRegister;




这样写有问题吗?被老板骂了个狗血临头
青城山下
6楼-- · 2019-03-27 04:24
本帖最后由 青城山下 于 2016-11-18 15:50 编辑
huihuihaha 发表于 2016-11-18 14:37
说得对,只要语法不错误就行

多层嵌套是可行的,但是有没有层数的限制呢

一周热门 更多>