C语言练习笔记 ~结构体7 ~ 指向结构体的指针

mac2024-04-10  27

文章目录

1、通过指针访问结构体成员2、通过指针访问结构体数组

1、通过指针访问结构体成员

-> 操作符 (*p).a 等同于 p-> a

#include <stdio.h> #include <string.h> #pragma warning(disable:4996) struct student { char name[20]; int age; }; int main () { struct student st1 = {"abc", 30}; struct student *p; p = &st1; // strcpy((*p).name,"hello"); // (*p).age = 50; strcpy(p->name,"hello"); p->age = 50; printf("%s, %d\n", st1.name, st1.age); return 0; }

输出结果:

2、通过指针访问结构体数组

#include <stdio.h> #include <string.h> #pragma warning(disable:4996) struct student { char name[20]; int age; }; int main () { int i; struct student st[3]={{"张三", 34}, {"李四", 40}, {"王二麻子", 50} }; struct student *p = st; p ->age = 100; p++; p ->age = 20; p--; for(i = 0; i < 3; i++) { printf("%s, %d\n", p[i].name, p[i].age); } return 0; }

输出结果:

最新回复(0)