C语言中的成员访问
在C语言中,我们可以通过变量来访问它们的成员。根据变量的类型,我们使用不同的成员访问符:.
和->
。本文将详细介绍这两个成员访问符的使用。
目录
- 普通变量的成员访问
- 指针变量的成员访问
- 示例代码
- 总结
普通变量的成员访问
在C语言中,我们可以定义一个结构体来表示一个对象或者一组数据。结构体中的成员可以是不同的数据类型,比如整数、浮点数、字符数组等。当我们创建一个结构体变量后,可以通过.
来访问它的成员。
struct Person
{char name[20];int age;double score;
};int main()
{struct Person p;strcpy(p.name, "Alice");p.age = 25;p.score = 95.5;printf("Name: %s\n", p.name);printf("Age: %d\n", p.age);printf("Score: %lf\n", p.score);return 0;
}
上述示例中,我们定义了一个名为Person
的结构体,包含了三个成员:name
、age
、score
。在main
函数中,我们创建了一个Person
类型的变量p
,并通过strcpy
和赋值来设置其成员的值。然后,我们通过.
来访问p
的各个成员,并使用printf
将它们打印出来。
指针变量的成员访问
除了使用.
来访问结构体变量的成员,我们还可以使用指针变量来访问结构体的成员。当我们声明一个指向结构体的指针变量后,需要使用->
来访问结构体的成员。
struct Person
{char name[20];int age;double score;
};int main()
{struct Person p;struct Person* pp;pp = &p;strcpy(pp->name, "Bob");pp->age = 30;pp->score = 85.5;printf("Name: %s\n", pp->name);printf("Age: %d\n", pp->age);printf("Score: %lf\n", pp->score);return 0;
}
在上面的示例中,我们首先定义了一个指向Person
类型的指针变量pp
。然后,将pp
指向p
,并使用strcpy
和赋值来设置p
的成员的值。通过->
,我们可以访问pp
所指向的结构体的各个成员,并使用printf
将它们打印出来。
示例代码
你可以在以下链接中找到本文中使用的示例代码:C语言成员访问示例代码
总结
在C语言中,我们可以使用.
来访问普通变量的成员,使用->
来访问指针变量所指向的结构体的成员。这两种成员访问方式使得我们可以方便地操作结构体的数据。在编写程序时,我们可以根据实际需求选择合适的成员访问符。