我是靠谱客的博主 活泼草丛,最近开发中收集的这篇文章主要介绍[Pointers and C-String]D. Liang 7.3 Increasing array size,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Description

7.3 Increasing array size
Once an array is created, its size is fixed. Occasionally, you need to add more values to an array, but the array is full. In this case, you may create a new larger array to replace the existing array. Write a function with the following header:

int * doubleCapacity(int *list, int size)

The function create a new array that dobules the size of the parameter list, and copy the values in the list to the new array, the remaining value should to zero.

For example, the following codes outputs: 1 2 3 4 5 0 0 0 0 0

int list[5]={1,2,3,4,5};
int *newlist = doubleCapacity(list,5);
for(int i=0;i<2*5;i++)
  printf("%d ", *(newlist+i));

Hint

Don’t submit the main() function.

//   Date:2020/5/1
//   Author:xiezhg5
int * doubleCapacity(int *list, int size) {
	int i,*p;
	//分配新数组大小(原来的2倍) 
	p=(int*)malloc(2*size*sizeof(int));
	for(i=0; i<2*size; i++) {
		if(i<size)
			p[i]=list[i];
		else
			p[i]=0;
	}
	return p;
}

最后

以上就是活泼草丛为你收集整理的[Pointers and C-String]D. Liang 7.3 Increasing array size的全部内容,希望文章能够帮你解决[Pointers and C-String]D. Liang 7.3 Increasing array size所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(61)

评论列表共有 0 条评论

立即
投稿
返回
顶部