那位高手指点一下,c创建动态数组的步骤,谢谢!

详细点就行再说一下具体怎么用... 详细点就行
再说一下具体怎么用
展开
 我来答
傲世修罗王
2010-04-14 · TA获得超过1085个赞
知道小有建树答主
回答量:1034
采纳率:0%
帮助的人:737万
展开全部
int n ;
scanf("%d", &n) ;
int *a = (int *)malloc(sizeof(int) * n) ;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
FrankHB1989
2010-04-15 · TA获得超过4.2万个赞
知道大有可为答主
回答量:4569
采纳率:100%
帮助的人:3117万
展开全部
确定长度,例如从键盘中输入后保存在int n中(注意需要保证n是一个正整数)。
分配空间:T* p = (T*)malloc(n*sizeof(T));,其中T是要建立的数组中元素的类型。
(可以用calloc或alloc等其它函数,但不常用,细节上有差别。)
之后就可以用类似数组的形式使用p[x](等价于*(p+x))引用动态数组下标为x的元素了。注意C语言不检查越界,所以需要保证x在整数区间[0,n)上,否则可能取到正确的值。
数组p使用完毕后,(针对malloc、calloc、strdup等函数分配的空间)用free(p);释放空间,以免内存泄露(用其它方式,可能可以不回收,或根本无法手动回收(如alloc分配的情况))。
malloc、calloc、free是标准库函数,包含在头文件stdlib.h中。
====
[原创回答团]

参考资料: 原创

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式