指针的变量成员怎么赋值
时间: 2023-11-02 15:57:22 浏览: 37
指针变量的成员是指针所指向的对象的成员,要给指针变量的成员赋值,可以使用以下两种方式:
1. 直接访问指针变量的成员并赋值。例如:
struct Student {
char name[20];
int age;
};
struct Student *p;
p = (struct Student*)malloc(sizeof(struct Student)); // 分配一个结构体类型大小的内存空间
strcpy(p->name, "Tom"); // 直接访问指针变量 p 所指向的结构体对象的成员 name 并赋值
p->age = 18; // 直接访问指针变量 p 所指向的结构体对象的成员 age 并赋值
这样指针变量 p 所指向的结构体对象的成员 name 的值就是 "Tom",成员 age 的值就是 18。
2. 先访问指针变量所指向的对象,再访问该对象的成员并赋值。例如:
struct Student {
char name[20];
int age;
};
struct Student *p;
struct Student s;
p = &s; // 将指针变量 p 指向结构体变量 s
strcpy(p->name, "Tom"); // 先访问指针变量 p 所指向的结构体对象 s,再访问该对象的成员 name 并赋值
p->age = 18; // 先访问指针变量 p 所指向的结构体对象 s,再访问该对象的成员 age 并赋值
这样指针变量 p 所指向的结构体对象的成员 name 的值就是 "Tom",成员 age 的值就是 18。
需要注意的是,使用指针变量的成员之前,一定要确保该指针变量已经被正确地初始化并指向了正确的对象。否则,可能会导致程序崩溃或者产生不可预期的结果。