指向结构体变量的指针获取数据
2025年12月17日
1
指向结构体变量的指针获取数据
指向结构体变量的指针:是该变量所占据的内存段的起
始地址。
定义形式:struct 结构类型名 *指针名
如: struct stu s,*p=&s;
引用方式:
(*p).成员名 *p两侧的括号不可省
p->成员名 等价于:结构体变量.成员名
p->n 得到p指向的结构体变量中的成员n的值
#include <stdio.h>
#include <string.h>
void main(){
//定义结构体类型
struct student{
long int num;//学生编号
char name[20];//姓名
char sex[4];//性别
float score;//分数
};
//定义结构体变量
struct student stu_1;
//定义 指向结构体变量的 指针
struct student *p;
//把结构体变量的地址,存入到指针p里面
p=&stu_1;
//赋值(我本来没有,你给我了,我有值)
// 对 结构体类型中的 各个成员 逐一 赋值
stu_1.num=89101;
strcpy(stu_1.name,"孙奥");
// (*p).成员名
strcpy((*p).sex, "男");//当前这个指针中的地址 所指向的内容里的成员sex,我要给他赋值
//p->成员名 等价于:结构体变量.成员名
p->score=100;
//打印 输出 当前这个学生的 信息
printf("学号:%ld, 姓名:%s, 性别:%s, 分数:%.1f \n",
stu_1.num, p->name, (*p).sex, p->score );
}运行:

