编写适用于 Oracle® Solaris 11.2 的设备驱动程序

退出打印视图

更新时间: 2014 年 9 月
 
 

结构句柄的操作

用于在结构上执行操作的宏如下所示:

size_t STRUCT_SIZE(handle)

返回 handle 所引用的结构的大小(取决于该结构的嵌入式数据模型)。

typeof fieldname STRUCT_FGET(handle, fieldname)

返回 handle 所引用的数据结构中的指定字段。此字段为非指针类型。

typeof fieldname STRUCT_FGETP(handle, fieldname)

返回 handle 所引用的数据结构中的指定字段。此字段为指针类型。

STRUCT_FSET(handle, fieldname, val)

handle 所引用的数据结构中的指定字段设置为值 valval 的类型应与 fieldname 的类型相匹配。此字段为非指针类型。

STRUCT_FSETP(handle, fieldname, val)

handle 所引用的数据结构中的指定字段设置为值 val。此字段为指针类型。

typeof fieldname *STRUCT_FADDR(handle, fieldname)

返回 handle 所引用的数据结构中的指定字段的地址。

struct structname *STRUCT_BUF(handle)

返回指向 handle 所描述的本机结构的指针。