struct node *h,*p,*q;/*定义三个指向struct node类型结构体的指针,此处三个结构体类型的指针不指向任何存储空间,系统是不是也得给指针本身分配一点小小的空间,以存放地址值?有多大?*/
答:一个指针占4个字节
h=NULL;/*给指针h赋空值,说明它不指向任何地址,此举为何?*/
答:指针初始化,而且这个程序是创建新表,所以头结点已开始要为空
p->next=NULL;/*为什么要赋空值?*/
答:当链表创建完成后,表尾next指针就为NULL,不用再另外加判断语句来判定是否创建到表尾后再去给next指针赋值NULL了,这样程序会更加简洁。
q->next=p;/*看不懂?*/
答:我没有看见q指向任何地方,所以这里可能有几种情况。要么是你没有给出完整的程序,要么就是书上有错。