#include<stdio.h>
#include<conio.h>
#include<malloc.h>
struct node{
int value;
struct node *link;
}*p,**q,*r,*temp;
static int n=0;
void append(struct node **,int);
main(){
append(&p,1);
append(&p,2);
append(&p,3);
append(&p,4);
append(&p,5);
printf("Entered linked list :\n");
//display(p);
getch();
}
void append(struct node **q,int num){
if(n==0){
struct node *temp=(struct node*)malloc(sizeof(struct node));
temp->value=num;
temp->link=NULL;
*q=p;
n++;
}
else{
temp=*q;
while(temp->link!=NULL)
temp=temp->link;
r=(struct node*)malloc(sizeof(struct node));
r->value=num;
r->link=NULL;
temp->link=r;
//q=p;
}
}
有人可以告诉我为什么这个消息:
linkedlist.c.exe 中 0x00fa14ea 处的未处理异常:0xC000005:访问冲突读取位置 0x0000004
在 Visual Studio 2010 中运行此程序时即将到来?