How do I return the indices of a multidimensional array element in C?
Posted
by Eddy
on Stack Overflow
See other posts from Stack Overflow
or by Eddy
Published on 2010-04-09T15:40:20Z
Indexed on
2010/04/09
15:43 UTC
Read the original article
Hit count: 163
Say I have a 2D array of random boolean ones and zeroes called 'lattice', and I have a 1D array called 'list' which lists the addresses of all the zeroes in the 2D array. This is how the arrays are defined:
define n 100
bool lattice[n][n];
bool *list[n*n];
After filling the lattice with ones and zeroes, I store the addresses of the zeroes in list:
for(j = 0; j < n; j++)
{
for(i = 0; i < n; i++)
{
if(!lattice[i][j]) // if element = 0
{
list[site_num] = &lattice[i][j]; // store address of zero
site_num++;
}
}
}
How do I extract the x,y coordinates of each zero in the array? In other words, is there a way to return the indices of an array element through referring to its address?
© Stack Overflow or respective owner