将数组的子集复制到C中的另一个数组/数组中

前端之家收集整理的这篇文章主要介绍了将数组的子集复制到C中的另一个数组/数组中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在C中,是否有内置阵列切片机制?

像Matlab一样,
A(1:4)

会产生=

1     1     1     1

如何在C中实现?

我试着看,但最接近的是这样的:http://cboard.cprogramming.com/c-programming/95772-how-do-array-subsets.html

subsetArray =& bigArray [someIndex]

但是,这并不完全返回切片数组,而是指向切片数组的第一个元素…

非常感谢

解决方法

在std C中这样做是不可能的.你必须自己去做
如果你有一个字符串,你可以使用负责处理的string.h库,但是对于整数,我没有任何图书馆.
除此之外,在拥有你所拥有的东西之后,你想要开始你的子集的点实际上很容易实现.

假设你知道’main’数组的大小,那就是整数数组,你可以这样做:

subset = malloc((arraySize-i)*sizeof(int)); //Where i is the place you want to start your subset. 

for(j=i;j<arraySize;j++)
   subset[j] = originalArray[j];

希望这可以帮助.

猜你在找的C&C++相关文章