各位大佬麻烦帮忙看一下,从txt文件中获取数据为链表后,想要输出显示,运行结果是-842150451 1 3 5 7 9(1 3 5 7 9为正确链表数据)
代码如下:
// 实验2.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>
typedef struct LinkList
{
int data;
struct LinkList *next;
}LinkList;
LinkList *createlink()
{
LinkList *head=(LinkList*)malloc(sizeof(LinkList));
int t;
LinkList *p;
LinkList *q;
p=q=head;
FILE *r=fopen("list1.txt","r");
if(r==NULL)
{
printf("could not open file");
return NULL;
}
while(fscanf(r,"%d",&t)!=EOF)
{
q=(LinkList*)malloc(sizeof(LinkList));
q->data=t;
p->next=q;
p=q;
}
p->next=NULL;
return head;
}
int _tmain(int argc, _TCHAR* argv[])
{
LinkList *p;
p=createlink();
while(p)
{
printf("%d ",p->data);
p=p->next;
}
//system("pause");
return 0;
}