Chinaunix首页 | 论坛 | 博客
  • 博客访问: 512189
  • 博文数量: 119
  • 博客积分: 5054
  • 博客等级: 大校
  • 技术积分: 1305
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-03 13:13
文章分类

全部博文(119)

文章存档

2011年(4)

2010年(115)

我的朋友

分类: C/C++

2010-09-18 12:49:52

/* LwIP邮箱结构 */
typedef struct stLwIPMBox {
        struct stLwIPMBox *pstNext; //指向结构体自身的指针
        HANDLER           hMBox;
        void              *pstMsgs[MBOX_SIZE]; //指向任意数据类型的指针数组
}ST_LWIP_MBOX, *PST_LWIP_MBOX;

(HANDLER是由typedef自定义的数据类型)
在这条typedef类型定义语句中,包含了:
类型定义关键字:typedef;
结构体声明关键字:struct。

该语句定义了两种数据类型:
ST_LWIP_MBOX——结构体;
PST_LWIP_MBOX——结构(体)指针。
ST_LWIP_MBOX 类型定义的变量皆为为stLwIPMBox类型结构体;
PST_LWIP_MBOX 类型定义的变量皆为指向stLwIPMBox类型结构体的指针,即和 “struct stLwIPMBox *pstNext; //指向结构体自身的指针” 一样的性质。

对于PST_LWIP_MBOX结构指针类型的定义,在上面的语句中,意思表达得不明显,有些令人费解。其实,要是把上面的语句拆分成如下的两条语句,意思就明显了,但是为了代码的简洁,一般采用前面的编程规范。

/* LwIP邮箱结构 */
typedef struct stLwIPMBox {
        struct stLwIPMBox *pstNext; //指向结构体自身的指针
        HANDLER           hMBox;
        void              *pstMsgs[MBOX_SIZE]; //指向任意数据类型的指针数组
}ST_LWIP_MBOX;
/* LwIP邮箱结构 */
typedef struct stLwIPMBox {
        struct stLwIPMBox *pstNext; //指向结构体自身的指针
        HANDLER           hMBox;
        void              *pstMsgs[MBOX_SIZE]; //指向任意数据类型的指针数组
}* PST_LWIP_MBOX;
阅读(2289) | 评论(0) | 转发(0) |
0

上一篇:Ubuntu中体验KDE4

下一篇:uc/os-ii的内存管理

给主人留下些什么吧!~~