动态申请内存,,当内存大小不确定时需要申请内存这是百度滴,是因为我没有申请内存么,可是为什么要申请内存呢,下面代码怀疑内存有问题,输出都是瞎输出,#include<stdio.h>#define maxsize 30struct sqlist{ int num[maxsize]; int length;};struct sqlist* scan(struct sqlist* L,int n){ L->length=0; int i; for(i=0; i<n; i++) { L->length++; scanf("%d",&L->num[i]); } return L;}int main(){ printf("请输入顺序表的长度:"); int n; struct sqlist L; struct sqlist *p,*q; scanf("%d",&n); p=&L; q=scan(p,n); print(q);}void print(struct sqlist* L2){ printf("顺序表为:\n"); int i; for(i=0; i<L2->length; i++) { printf("%d ",L2->num[i]); }}
2 回答
onemoo
TA贡献883条经验 获得超454个赞
这个代码没有太大的问题吧。 你觉得运行时有什么异常吗?
这里不涉及申请内存的。
L 是 main 函数中的,p 也是指向它的。scan 函数通过指针 p 操作 L,返回的也是同一个指针。 最后 print 通过 q 指针把 L 中的内容打印出来。
这次 length 设置了正确的值,所以应该能够正常运行的。
- 2 回答
- 0 关注
- 1285 浏览
添加回答
举报
0/150
提交
取消