关于结构体内引用成员方式的问题 -> 和 .

2020-10-16 教育 61阅读
结构体引用成员变量有两种操作符,即'->'和'.'。
具体使用哪种方式,取决于结构体变量的类型。

struct test
{
int a;
};
为例,说明如下。
1 结构体指针变量。
定义
struct test *v;
访问v中的成员a需要写作v->a。
2 结构体变量。
定义
struct test v;
访问v中的成员a需要写作v.a。
3 二者转换。
由于指针本质为地址,所以二者是可以转换的。
struct test v, *p;
p = &v;
这时,v.a和p->a是标准的写法,但是(&v)->a和(*p).a同样也是合法的访问成员的表达式。但是由于写法上并不便捷,所以代码中很少见到,只是从C规范上来说,这样的写法都是合法的。
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com