资讯动态

函数与扩容

发布时间:2026/8/4 22:25:56 来源:尧图企业网站定制
函数与扩容扩容背景具体操作扩容背景原理在C语言中常规定义的数组在初始化之后长度是不可变的且数组名存储的是数组首地址不支持重新赋值为其他数组的地址思路1数组定义之后长度不可变因此需要再创建一个更大的数组2将原数组的数据逐一迁移到新数组中3利用指针变量存储新分配内存的首地址通过指针加下标的形式来操作所有数据具体操作添加数据与扩容函数 当仓库存满时触发扩容机制并将旧数据迁移到新数组int*addData(intnum,intvalues[],int*size,int*length){intlen*length;intsi*size;// 先判断是否存满了if(silen){// 需要扩容intnewLenlen*2;int*newValues(int*)malloc(newLen*sizeof(int));// 迁移数据for(inti0;ilen;i){newValues[i]values[i];}// 更新数据*lengthnewLen;// 更新旧数组名存储的地址valuesnewValues;printf(扩容完成当前的总容量升级为: %d\n,*length);}values[si]num;*size*size1;// values 存储的是一个新数组的地址返回出去重新赋给 main 里面的 valuesreturnvalues;}将函数加入数字仓库

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价