好的,我正在尝试从现有数组中获取子数组,但我只是不确定该怎么做。在我的示例中,我有一个非常大的数组,但我想从数组的最后 5 个元素创建一个数组。
我正在谈论的一个例子是:
int array1 = {1,2,3,...99,100};
int array2[5] = array1+95;
我知道这是不正确的,但我在正确处理时遇到了一些麻烦。我想获取 array1 中 96 到 100 的元素并将它们放入 array2 但我不想复制数组。我只希望 array2 从 96 元素开始,这样 array1[96] 和 array2[0] 将指向相同的位置。
最佳答案
为此:
"such that array1[96] and array2[0] would be pointing to the same location."
你可以这样做:
int *arr2 = arr1 + 96;
assert(arr2[0] == arr1[96] == 97);
关于c++ - 在 C++ 中从现有数组创建子数组的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2137361/