1. 传统数组的问题
指针和动态内存分配是C语言中最重要的两个部分。在C语言中,对内存的管理至关重要。
传统数组占用的内存在定义的那一刻已经被定死了。
如果没有动态内存分配,可能会出现为了满足最大需求而浪费内存的情况。例如,有极少部分用户需要输入很长的数据时,需要为了这部分用户扩大变量所占用的内存,而对于大多数用户来说,这样显然会浪费很多内存空间。
因此以往传统的数组定义形式灵活性低,应用受限。整个程序都依赖于预设编译前的大小,可能不够用,也可能会浪费,内存不够用时可能会有内存溢出,导致一些安全隐患。
这时候就需要动态内存分配,可以处理可变大小的数据,有高效的数据结构和资源优化。
