Passar array multidimensional como parametro?

24/11/2005

0

Olá galera, estou programando em c/c++ em pouquissimo tempo, e já estou dando trabalho para vc´s :D eu preciso saber como passar um array multidimensional como parametro de uma função e como ler os dados dentro da função. Estou declarando a var assim :

int Mapa[100][100];

e eu precisava passar esse mapa como parametro de uma função, para eu pesquisar alguns valores dentro do parametro, como eu tô começando agora, se puder colocar um pequeno código exemplificando para mim é melhor :D


Diegogm

Diegogm

Responder

Posts

05/12/2005

Rodrigo_rcp

Boa tarde!

Quando uma matriz é usada como argumento para uma função apenas o endereço da matriz é passado, não uma cópia da matriz inteira.Quando vc chama uma função com um nome de matriz, um ponteiro para o primeiro elemento na matriz é passaso para a função.(Não se esqueça: em C, um nome de matriz sem qualquer índice é um ponteiro para o primeiro elemento na matriz).

void matrizes(int matriz[10][10])
{
  int i,j;

  for(i=1;i<=10;i++)
  {
    printf("\n");
    for(j=1;j<=10;j++)
      printf("¬2d * ¬2d = ¬2d\n",i,j,matriz[i-1][j-1]);
  }
}

int main(int argc, char* argv[])
{
        int i,j,tabuada[10][10];

        for(i=1;i<=10;i++)
          for(j=1;j<=10;j++)
            tabuada[i-1][j-1]=i*j;
        matrizes(tabuada);

        system("pause");
        return 0;
}


Um abraço,

Rodrigo_rcp.


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar