看了翁恺老师的可变数组,瞬间又明白了很多东西,总的来说,步骤分为几步:
1、先malloc一块内存放数组
2、如果用一个变量来计数,然后用一个if语句来检查输入数据的量有没有越界
3、如果输入的数据越界了,就重新malloc一块更大的内存放一个更大的数组
4、然后把之前数组的元素都拷贝进来(一个for循环搞定)
5、然后在free掉之前那个数组
可变数组的缺陷
如果malloc的内存大到一定程度,即内存利用率达到1\2,则无法在申请新的内存,因为之前的那块内存还没有free掉,而之前那块内存加上要申请的内存超过了总内存,就malloc不下来了