请帮我看一下
这个程序想实现的是用链表记录输入的字符,以“.”结束,在输出字符。编译器检查后没有错误,但是运行时,输入字符再按enter键,提示遇到问题需要关闭,请问这是怎么回事,怎么解决。我是新手望多多指教#include <iostream>
#define flag '.'
using namespace std;
typedef struct node{
char data;
struct node *prior,*next;
}lnode,*linklist;
linklist create_linklist()
{
linklist l;
lnode *r,*s;
char x;
cout<<"input the letters:"<<endl;
cin>>x;
l=r=NULL;
while(x!=flag)
{
s=new lnode;
s->data=x;
s->prior=r;
r->next=s;
r=s;
cin>>x;
}
if(r!=NULL)
r->next=NULL;
return l;
}
void output(linklist l)
{
lnode *p;
p=l->next;
while(p!=NULL)
{
cout<<p->data;
p=p->next;
}
}
void main()
{
linklist l;
l=create_linklist();
output(l);
}
[[it] 本帖最后由 jianghejie 于 2008-4-11 12:13 编辑 [/it]]