结构体就是变量,变量可通过变量名和地址访问
结构体指针变量的定义:
结构体实际上就是自己定义的变量类型,所以结构体指针与整型、字符、浮点类型如出一辙
- char c;
- char *pc = &c;
-
- struct Test t1;
- struct Test *ps = &t1;
而定义一个指向结构体的指针,保存的是结构体的地址
通过结构体指针访问结构体:
通过指针变量间接访问结构体时用“->”运算符
- printf("t1的idata=%d\n",t1.idata); //.运算符
- printf("t1的idata=%d\n",ps->idata); //->运算符
-
- ps->cdata ='r'; //通过指针变量修改结构体变量
- printf("t1的idata=%c\n",t1.cdata); //.运算符
- printf("t1的idata=%c\n",ps->cdata); //->运算符
应用:
- #include
- #include
-
- struct Student
- {
- int num;
- char name[32];
- char sex;
- int age;
- double score;
- char addr[32];
- };
- int main(){
- int arr[3]= {1,2,3};
- int i;
- int len;
-
- struct Student arry[3]={
- {2,"张三",'m',18,97.5,"北京"},
- {3,"李四",'m',18,98.5,"上海"},
- {4,"王五",'f',18,99.5,"广州"}
- };
- len = sizeof(arr)/sizeof(arr[0]);
-
-
- struct Student *p;
- p = arry;
- for(i=0;i
- printf("学号:%d,年龄:%d,分数:%lf,名字:%s,地址:%s\n",
- p->num,p->age,p->score,p->name,p->addr);
- p++;
- }
- p = arry; //再次打印时,指针归位
- for(i=0;i
- printf("学号:%d,年龄:%d,分数:%lf,名字:%s,地址:%s\n",
- p->num,p->age,p->score,p->name,p->addr);
- p++;
- }
- return 0;
- }
-
相关阅读:
(53)linux
reactjs中使用threejs从0到1
python毕业设计作品基于django框架新闻信息管理系统毕设成品(2)网站功能
WebSocket 的 6 种集成方式
Selenium自动化中处理鼠标悬停并操作的方法
虚拟机Ubuntu18.04系统使用时所需要的便利配置选项
基于nodejs的在线跑腿管理系统
Vue混入与插件
【Node.js实战】构建商品管理系统:从前端到后端的全栈开发实践
android 5.1 BatteryManager深入分析
-
原文地址:https://blog.csdn.net/m0_58832279/article/details/133213629