当C中的元素数量未知时,如何为数组分配动态内存

Sat*_*346 1 c

如何将动态内存分配给大小或元素数量未知的数组

int *p = (int*)malloc(i*sizeof(int)); 在这里我也动态意味着我可能是1或1000我们不知道如何分配大小谢谢

Dav*_*rtz 5

首先为10个元素分配空间.如果它增长到10,那么使用realloc将分配增加到20.如果增长到20,则将其增长到40,依此类推.保留'alloc_size'变量和'count'变量.在添加新元素之前,请检查是否count == alloc_size,如果是,realloc.