## 结构体定义
typedef struct
{
unsigned char slot; //°å¿¨²Ûλ
unsigned char port_num; //°å¿¨¶Ë¿ÚÊý
unsigned char PN[30]; //°å¿¨PNºÅ
unsigned char SN[30]; //°å¿¨SNºÅ
unsigned char SW_Version[16]; //°å¿¨Èí¼þ°æ±¾
unsigned char HW_Version[16]; //°å¿¨Ó²¼þ°æ±¾
unsigned char cpld_version[16]; //°å¿¨CPLD°æ±¾
ETHENET_ADDRESS_T ethernet;
unsigned char card_type; //ST_CARD_TYPE_E
unsigned char state; //ST_CARD_STATE_E
INT16 temp_airin;
INT16 temp_airout;
unsigned char sub_card_type; //ST_SUB_CARDTYPE_E
}CARD_MUX_INFO_T;
## 声明一个结构体
CARD_MUX_INFO_T *card_info = get_card_info();
如何获取结构体card_info成员的地址
在C语言中,.
和->
都是用于访问结构体成员的运算符,但它们的使用场景略有不同。
.
运算符用于访问结构体变量的成员,而->
运算符用于访问指向结构体的指针的成员。
例如,假设有以下结构体定义:
typedef struct {
int age;
char name[20];
} Person;
如果我们有一个Person类型的结构体变量person,我们可以使用.
来访问其成员:
Person person;
person.age = 25;
strcpy(person.name, "John");
如果我们有一个指向Person类型的指针ptr,我们可以使用->
来访问其成员:
Person *ptr = &person;
ptr->age = 30;
strcpy(ptr->name, "Alice");
在这个例子中,ptr->age
和ptr->name
分别访问了指针ptr所指向的结构体的成员age和name。
因此,.
用于直接访问结构体变量的成员,而->
用于访问指向结构体的指针的成员。