有没有人知道将每个第n个元素从一个数组复制到另一个数组的方法?例如,我有一个数组Data [x],并希望将每个第三个(第三个)元素--Data [0],Data [3],Data [6]等复制到一个新的数组Data2 [j]中。我尝试使用for循环,但没有成功。
void StoreData()
{
bufferPointer1 = &BufferA[0];
x=0;
i=0;
j=0;
while (x<NO_SAMPLES-1)
{
Data[x] = *bufferPointer1;
bufferPointer1++;
x++;
for (j=0; j<127; i++)
{
Data2[j] = Data[i+=3];
j++;
}
}
}
答案 0 :(得分:0)
为什么你没有声明函数中的变量?它们中的所有四个似乎都在本地使用,在功能之外不应该是可见的。
为什么在本节中增加i而不是j,这是一个错字吗?
for (j=0; j<127; i++)
{
Data2[j] = Data[i+=3];
j++;
}
我会这样写:
for (j=0; j<127; j++)
{
Data2[j] = Data[i];
i+=3;
}
i=0; // Reset pointer