C语言中结构体指针学习笔记
指针就是地址,这个地址存放在指针变量中,这个地址如果是某一结构体的首地址,则这个指针变量指向该结构体变量,指针变量的基类型必须与结构体变量的类型相同
以下是一实例:
#include <stdio.h>
#include <string.h>
int main()
{struct Student{//声明一个结构体类型
int num;
char name[20];
char sex;
float score;
};
struct Student stu ;//定义一个该类型的结构体变量
stu.num = 10066;//赋值num
strcpy(stu.name,“liming”);//用字符串复制函数给name赋值
stu.sex = ‘M’;//赋值sex
stu.score = 88.6;//赋值score
struct Student *p;//定义一个指向Student数据类型指针变量
p = &stu;//p指针变量指向结构体变量stu
printf(“No:%d\nname:%s\nsex:%c\nscore:%0.1f\n”,stu.num,stu.name,stu.sex,stu.score);//依次输出stu的各个
//成员
printf(“No:%d\nname:%s\nsex:%c\nscore:%0.1f\n”,p->num,p->name,p->sex,p->score);//用结构体指针
//依次输出stu的各个成员
return 0;
}
/*以下是输出情况:
[Running] cd “c:\Users\a1362\Desktop\c语言学习\结构体指针” && gcc day4.c -o day4 && "c:\Users\a1362\Desktop\c语言学习\结构体指针"day4
No:10066
name:liming
sex:M
score:88.6
No:10066
name:liming
sex:M
score:88.6
[Done] exited with code=0 in 0.224 seconds
*/