Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
如何将动态内存分配给大小或元素数量未知的数组
int *p = (int*)malloc(i*sizeof(int)); 这里我也是动态的意思是我可能是 1 或 1000 我们不知道如何分配大小谢谢
int *p = (int*)malloc(i*sizeof(int));
首先为 10 个元素分配空间。如果超过 10,则使用realloc将分配增加到 20。如果超过 20,则将其增加到 40,依此类推。保留一个“alloc_size”变量和一个“count”变量。在添加新元素之前,请检查是否count == alloc_size,如果是,请检查realloc。
realloc
count == alloc_size
您设置了一个数组类型的变量。说 ch,从用户那里得到它,使用指针来实现数组,如果 ch!='\n' realloc 指针重复获取输入;而已。