我在tc中变了一个小程序,执行结果却有这个提示,这是为什么呢?

paulxj 2003-07-31 05:58:11
0123456789
01243456789
0123456789
Null pointer assignment \\怎么会有这句话??问题出在哪?


附:程序内容,顺序表的插入与删除

#include<stdio.h>
#define ListSize 50
typedef int DataType;
typedef struct{
DataType data[ListSize];
int i;
}SeqList;

SeqList *s;


void InsertList(DataType x,int j)
{ int k;

if(s->i==ListSize||j>ListSize)
printf("error!");
else
{for(k=s->i;k>=j;k--)
s->data[k+1]=s->data[k];
s->data[j]=x;
s->i++;
}
}

void DeleteList(int j)
{ int k;

if(j>s->i||j<0)
printf("error!");
else
{ for(k=j;k<s->i;k++)
s->data[k]=s->data[k+1];
s->i--;
}
}


void print()
{ int k;
for(k=0;k<s->i;k++)
printf("%d",s->data[k]);
printf("\n");
}

main()
{ int i;
s->i=0;

for(i=0;i<10;i++)
{ s->data[i]=i;
s->i++;
}
print();
InsertList(4,3);
print();
DeleteList(3);
print();
}


...全文
43 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
kxen 2003-08-02
  • 打赏
  • 举报
回复
帖子该结了吧!!
kxen 2003-08-01
  • 打赏
  • 举报
回复
强制类型转换,malloc函数的返回类型时 (void *),
不强制转换就会出现将(void *)类型隐式转换成(SeqList *)而报错。

不知你用的是什么编译器,我不明白你的编译器怎么会不理会这些细节。
ehhl 2003-08-01
  • 打赏
  • 举报
回复
是那个问题,^_^
lth_81 2003-08-01
  • 打赏
  • 举报
回复
-_-!!
danceflash 2003-08-01
  • 打赏
  • 举报
回复
强制类型转换
malloc函数的返回类型时 (void *)
要强制类型转换为你所需要的指针类型
paulxj 2003-08-01
  • 打赏
  • 举报
回复
再问楼上

s = (SeqList *)malloc(sizeof(SeqList));

其中(SeqList *)这一部分是什么意思?我试了,有没有都一样
kxen 2003-07-31
  • 打赏
  • 举报
回复
刚才我是过了,只要在s使用前给他分配个地址就解决了:

s = (SeqList *)malloc(sizeof(SeqList));

另外最好在程序结尾加上个 getch();
有利于察看结果



唉,说的晚了,不知道能不能分到分。
blade1980 2003-07-31
  • 打赏
  • 举报
回复
呵呵 没有初始化吧
Icat 2003-07-31
  • 打赏
  • 举报
回复
Null pointer assignment
在windows下就出现AV错误
同意楼上说的,不过他是tc的程序
就要用malloc来分配内存
也完全可以把
SeqList *s;
改成SeqList s;
然后把->改成.
呵呵
lth_81 2003-07-31
  • 打赏
  • 举报
回复
解决方法:
main()
{ int i;
s = new SeqList();//分配空间
s->i=0;
lth_81 2003-07-31
  • 打赏
  • 举报
回复
表示你是用了空指针进行赋值~~不知道说的对不对
问题在这里

SeqList *s;//你声明了这个指针,但是没有给他分配空间

main()
{ int i;
s->i=0;//这里你在没有分配空间的情况下赋值,就是这个错误
.....
paulxj 2003-07-31
  • 打赏
  • 举报
回复
简单问题,还请帮忙!

69,364

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧