数据结构的编程问题,编译时没有出错,但是无法运行
#include<iostream>usingnamespacestd;typedefstructSqList{int*elem;intlength;intlistsiz...
#include <iostream>
using namespace std;
typedef struct SqList
{
int *elem;
int length;
int listsize;
int incrementsize;
}l;
int main()
{
int i;
SqList l;
for(i=0; i<5; i++)
{ cin>>l.elem[i];
cout<<l.elem[i];
}
return 1;
} 展开
using namespace std;
typedef struct SqList
{
int *elem;
int length;
int listsize;
int incrementsize;
}l;
int main()
{
int i;
SqList l;
for(i=0; i<5; i++)
{ cin>>l.elem[i];
cout<<l.elem[i];
}
return 1;
} 展开
展开全部
#include <iostream>
using namespace std;
typedef struct SqList
{
int *elem;
int length;
int listsize;
int incrementsize;
}l;
int main()
{
int i;
SqList l;/*定义了l,但没有对l的内容进行初始化,所以l中的内容具体是多少只有系统知道,这样elem这个指针所指向的地址也就是不可预知的,下面直接对这个指针进行了赋值操作,当然就会有问题了*/
for(i=0; i<5; i++)
{ cin>>l.elem[i];
cout<<l.elem[i];
}
return 1;
}
展开全部
指向结构体的指针根本没有初始化,也就是没给他分配内存。
typedef struct SqList
{
int *elem;
int length;
int listsize;
int incrementsize;
}l;
int main()
{
int i;
SqList l;
l.listsize=10;
l.elem=new int[l.listsize];
for(i=0; i<5; i++)
{ cin>>l.elem[i];
cout<<l.elem[i];
}
return 1;
}
typedef struct SqList
{
int *elem;
int length;
int listsize;
int incrementsize;
}l;
int main()
{
int i;
SqList l;
l.listsize=10;
l.elem=new int[l.listsize];
for(i=0; i<5; i++)
{ cin>>l.elem[i];
cout<<l.elem[i];
}
return 1;
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在for语句前面加上
l.elem = new int[5];
l.elem = new int[5];
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询