malloc还是普通的数组定义?

malloc还是普通的数组定义?,第1张

概述什么时候我应该在C中使用malloc而不是普通的数组定义? 我无法理解之间的区别: int a[3]={1,2,3}int array[sizeof(a)/sizeof(int)] 和: array=(int *)malloc(sizeof(int)*sizeof(a)); 通常,在以下情况下使用malloc(): >数组太大而无法放在堆栈上 >数组的生命周期必须比创建它的范围更长 否则,使用堆 什么时候我应该在C中使用malloc而不是普通的数组定义

我无法理解之间的区别:

int a[3]={1,2,3}int array[sizeof(a)/sizeof(int)]

和:

array=(int *)malloc(sizeof(int)*sizeof(a));
解决方法 通常,在以下情况下使用malloc():

>数组太大而无法放在堆栈上
>数组的生命周期必须比创建它的范围更长

否则,使用堆栈分配的数组.

总结

以上是内存溢出为你收集整理的malloc还是普通的数组定义?全部内容,希望文章能够帮你解决malloc还是普通的数组定义?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1223555.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-05
下一篇2022-06-05

发表评论

登录后才能评论

评论列表(0条)

    保存