返回2d数组的索引

时间:2013-10-16 12:06:59

标签: c++ arrays

如何返回2d数组中大于0的所有元素的索引?我将使用c ++。

int distances[2][3]={{0,8,0},{0,4,0}};

for(int i=0; i<2; i++){
    for(int j=0; j<3; j++){
    if(distances[i][j] > 1){
         //row=i/3;
         //columns=i%3;
         cout << distances[i][j] << " " << endl;          //value

提前致谢

2 个答案:

答案 0 :(得分:1)

编写一个函数并让它返回一对对矢量:

std::vector<std::pair<size_t,size_t>> filter();

答案 1 :(得分:0)

对于距离[i] [j]> 1的所有值,索引是(i,j)。 0

如果你想要退货,例如从函数中,你可以创建一个类,map,vector,struct等。

struct pair {
    int i
    int j
};

(...)

pair p;
p.i = i;
p.j = j;
return p;