您的位置 首页 国产IC

c言语结构体界说结构体

代码1定义结构体_m_usmart_devstruct_m_usmart_dev{struct_m_usmart_nametab*funs;函数名指针void(*init)(u8);初始化u8(*c

代码1 界说结构体_m_usmart_dev

struct _m_usmart_dev
{
struct _m_usmart_nametab *funs;//函数名指针

void (*init)(u8);//初始化
u8 (*cmd_rec)(u8*str);//辨认函数名及参数
void (*exe)(void); //履行
void (*scan)(void); //扫描
u8 fnum; //函数数量
u8 pnum; //参数数量
u8 id;//函数id
u8 sptype;//参数显现类型(非字符串参数):0,10进制;1,16进制;
u16 parmtype;//参数的类型
u8 plentbl[MAX_PARM]; //每个参数的长度暂存表
u8 parm[PARM_LEN]; //函数的参数
};

代码2 界说_m_usmart_dev类型的结构体 并对其赋初始值

struct _m_usmart_dev usmart_dev=
{
usmart_nametab,
usmart_init,
usmart_cmd_rec,
usmart_exe,
usmart_scan,
sizeof(usmart_nametab)/sizeof(struct _m_usmart_nametab),//函数数量
0, //参数数量
0, //函数ID
1,//参数显现类型,0,10进制;1,16进制
0,//参数类型.bitx:,0,数字;1,字符串
0, //每个参数的长度暂存表,需求MAX_PARM个0初始化
0,//函数的参数,需求PARM_LEN个0初始化
};

上边代码可理解为

struct _m_usmart_dev
{
struct _m_usmart_nametab *funs;//函数名指针

void (*init)(u8);//初始化
u8 (*cmd_rec)(u8*str);//辨认函数名及参数
void (*exe)(void); //履行
void (*scan)(void); //扫描
u8 fnum; //函数数量
u8 pnum; //参数数量
u8 id;//函数id
u8 sptype;//参数显现类型(非字符串参数):0,10进制;1,16进制;
u16 parmtype;//参数的类型
u8 plentbl[MAX_PARM]; //每个参数的长度暂存表
u8 parm[PARM_LEN]; //函数的参数
}usmart_dev=
{
usmart_nametab,
usmart_init,
usmart_cmd_rec,
usmart_exe,
usmart_scan,
sizeof(usmart_nametab)/sizeof(struct _m_usmart_nametab),//函数数量
0, //参数数量
0, //函数ID
1,//参数显现类型,0,10进制;1,16进制
0,//参数类型.bitx:,0,数字;1,字符串
0, //每个参数的长度暂存表,需求MAX_PARM个0初始化
0,//函数的参数,需求PARM_LEN个0初始化
};

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/ic/257193.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部