定义结构体指针有什么用

请问结构体指针有什么用 为什么访问里面的成员一定要定义个指针-> 指过去 为什么不直接定义个变量用.直接访问
struct student{
char *name;
int score;
struct student* next;
}stu,*stu1;
stu1->score = 98;和stu.score=98都一样可以赋值 为什么要还定义结构体指针呢?

  定义结构体指针用于构建链表,该结构体类型定义出来是为是表示链表中的每一个结点的,这个next是指向下一个结点的指针。
  typedef int selemtype;

  typedef struct{
  selemtype *base;
  selemtype *top;
  int stacksize;
  }sqstack;//T1

  template <class T1>
  void Initstack(T1 &S) {
  S.base=new selemtype[INISIZE];
  if(!S.base) exit(OVERFLOW);
  S.top=S.base;
  S.stacksize=INISIZE;
  }//初始化栈

  结构体指针:
  typedef struct Lnode{
  int data;
  struct Lnode *next;
  }Lnode,*LinkList;

  void CreateList(LinkList &L,int n,int array[])
  {
  L=new Lnode;
  L->next=NULL;
  int q=L;
  for(int i=0;i<=n;i++)
  {
  LinkList p=new Lnode;
  q->next=p;
  p->next=NULL;
  q=q->next ;
  p->data=array[i];
  }
  }//初始化单链表L
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-09-27

因为有成员next   他是一个指针

struct student{  

  char *name;  

  int score;  

  struct student* next;  

};

追问

那个next是不能用 .去访问的是吧?

本回答被提问者和网友采纳
相似回答