是否有更有效的方法来获得数组的每一秒(一般每N个)元素,然后是下面的简单for循环?例如,使用通用算法?
#include<iostream> using namespace std; int main() { const int a_size = 6,b_size = 3; int a[a_size] = {1,3,6,2,7}; int b[b_size]; int bx = 0; for ( int ax = 0; ax < a_size; ++ax ) { if (ax % 2 == 0) b[bx++] = a[ax]; } }
解决方法
for (int ax = 0; ax < a_size; ax += 2)
如果a_size接近INT_MAX,请小心.