结构体指针
作用:通过指针访问结构体中的成员
- 利用操作符->可以通过结构体指针访问结构体属性
1.指针访问单一结构体
#include <iostream> #include <string> #include <ctime> using namespace std; struct Student { string name; int age; int score; }; int main() { struct Student stu = {"张三", 18, 45}; struct Student *p = &stu; //这里必须写&stu不能写stu,因为指针p必须指向地址 p->score = 89; cout << "姓名:" << p->name << "年龄:" << p->age << "分数:" << p->score << endl; }
2.指针访问数组结构体
#include <iostream> #include <string> #include <ctime> using namespace std; #define num 5 struct Student { string name; int age; int score; }; int main() { struct Student stu[num] = { {"张三", 15, 45}, {"李四", 14, 25}, {"王五", 15, 75}, {"赵六", 15, 35}, {"钱七", 15, 55} }; struct Student *p = stu; //这里必须写stu不能写&stu,这里p指向stu数组的第一个元素 p->score = 35; for (int i = 0; i < num; i++) { cout << "姓名:" << p->name << "年龄:" << p->age << "分数:" << p->score << endl; p++; //每次p指针往后挪一个 } }
标签:struct,int,持续,更新,stu,score,c++,Student,include From: https://www.cnblogs.com/eisenshu/p/18052316