文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>typedef和结构体学习札记

typedef和结构体学习札记

时间:2010-09-18  来源:szufhc2006

/* 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;
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载