有下面几个结构体:
或者
结构体成员直接访问:
comp.sa[4].c
结构体成员的间接访问:
当拥有一个指向结构的指针时,,由于点操作符优先级高于间接访问操作符,所以必须使用括号。
可以这么引用:
(*cp).f
但是为了方便,C提供了 箭头操作符:"->"
左操作数必须是指向结构的指针,右操作数是该结构的成员。如:
cp->f
cp->a
cp->s
struct SIMPLE {
int a;
char b;
float c;
}; //SIMPLE是个结构标签
struct SIMPLE x;
struct SIMPLE y[20], *z;
或者
typedef struct {
int a;
char b;
float c;
}Simple; //Simple 是个类型名
Simple x;
Simple y[20], *z;
struct COMPLEX {
float f;
int a[20];
long *lp;
struct SIMPLE s;
struct SIMPLE sa[10];
struct SIMPLE *sp;
};
struct COMPLEX comp;
结构体成员直接访问:
comp.sa[4].c
结构体成员的间接访问:
当拥有一个指向结构的指针时,,由于点操作符优先级高于间接访问操作符,所以必须使用括号。
void func( struct COMPLEX *cp)
可以这么引用:
(*cp).f
但是为了方便,C提供了 箭头操作符:"->"
左操作数必须是指向结构的指针,右操作数是该结构的成员。如:
cp->f
cp->a
cp->s