我定义的结构体
typedef int ElemType;
4 typedef struct node {
5 ElemType data;
6 struct node *next;
7 }QueueNode,*LinkQueue;
我的一个函数
void EnterQueue(LinkQueue Q,ElemType member)
11 {
12 QueueNode *temp;
13 temp=(QueueNode *)malloc(sizeof(QueueNode));
14 temp->data=member;
15 Q->next=temp;
16 temp->next=NULL;
17
18 }
gcc 编译通过,运行core 段错误 gdb找错 显示函数里Q->next=temp; 这句话出错了,,,
新手 求指导
代码开头添加
if(!Q)return; //
空指针,会导致错误
必须检查指针是否非空指针
确认传入进来的参数,Q指针。
引用该指针前,必须先判断指针是否为空,否者是随机的传入栈内数值,发生段错误等未知错误