指向结构体的指针保存整个结构体的地址。
主要用于创建复杂的数据结构,如链表、树、图等。
可以使用一个特殊的运算符(箭头运算符 -> )来访问结构体的成员。
声明
以下是指向结构体的指针的声明:
'struct tagname *ptr;
例如,struct Student *s;
访问
您可以使用以下代码访问指向结构的指针 -
'Ptr-> membername;
例如,s->sno、s->sname、s->marks;
示例
以下是指针结构的 C 程序 -
'#include<stdio.h>
struct 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<p>", st ->sno);
printf ("name = %s</p><p>", st->sname);
printf ("marks =%f</p><p>", st ->marks);
getch ( );
}</p>
输出
当执行上述程序时,会产生以下结果 -
'enter sno, sname, marks:1 priya 34
details of the student areNumber = 1
name = priya
marks =34.000000