
结构体指针保存了整个结构体的加法。
它用于创建复杂的数据结构,如链表、树、图等。
成员可以使用称为箭头运算符 ( -> ) 的特殊运算符来访问结构体。
声明
以下是 C 编程中指向结构体的指针的声明 -
struct tagname *ptr;
例如 - struct Student *s -
立即学习“C语言免费学习笔记(深入)”;
访问
下面解释了如何访问结构体指针。
ZanCms,国产外贸独立站自助建站系统(询盘 + 商城) ZanCms 是卓越的国产外贸独立站自助建站系统,集询盘与商城功能于一体。其内置先进的 AI 翻译,轻松打破语言壁垒,让全球客户畅享无障碍浏览。系统架构设计精妙,谷歌性能评分优异,PC 指标高达 90 +,确保快速流畅的访问体验。在搜索优化方面表现卓越,精心打造的 URL 与 TDK,极大提升网站的易收录性,助力在搜索引擎中脱颖而出。多语
Ptr-> membername;
例如 - s->sno, s->sname, s->marks;
示例程序
以下程序显示了结构体指针的用法 - p>
#includestruct student{ int sno; char sname[30]; float marks; }; main ( ){ struct student s; struct student *st; printf("enter sno, sname, marks:"); scanf ("%d%s%f", & s.sno, s.sname, &s. marks); st = &s; printf ("details of the student are"); printf ("Number = %d ", st ->sno); printf ("name = %s
", st->sname); printf ("marks =%f
", st ->marks); getch ( ); }
输出
让我们运行上面的程序,将产生以下结果 -
enter sno, sname, marks:1 Lucky 98 details of the student are: Number = 1 name = Lucky marks =98.000000
示例 2
考虑另一个示例,它解释了结构体指针的功能。
实时演示
#includestruct person{ int age; float weight; }; int main(){ struct person *personPtr, person1; personPtr = &person1; printf("Enter age: "); scanf("%d", &personPtr->age); printf("Enter weight: "); scanf("%f", &personPtr->weight); printf("Displaying: "); printf("Age: %d
", personPtr->age); printf("weight: %f", personPtr->weight); return 0; }
输出
让我们运行上面的程序,将产生以下结果 -
Enter age: 45 Enter weight: 60 Displaying: Age: 45 weight: 60.000000










