我在2d图像上使用3x3网格进行卷积处理,该图像以1d数组表示。我正在迭代某些像素,需要访问周围的像素(忽略边缘情况)。是否有可能指针始终指向另一个指针旁边的位置?
int* a = new int[5];
//populate with data (0, 2, 4, 6, 8)
int* b = &a[2]; //4
int* c = b+1; //6
b++; //b->6, c->6
//What if after b++ I want c->8?
有没有办法让指针相对于另一个指针,这样当主指针改变时,其他指针随之改变?所以,一个指向总是指向另一个指针的邻居的指针。
答案 0 :(得分:1)
增量b
不会改变c
。如果您希望两个指针并行移动,则必须增加它们:
b++;
c++;
这似乎比它值得更麻烦,因为你可以b + 1
找到" next"数组中的元素。