Ir para conteúdo
Fórum Script Brasil
  • 0

Ponteiro Para Matriz


Siele =D

Pergunta

4 respostass a esta questão

Posts Recomendados

  • 0

Bem, vou tentar ser mais clara.

Quero entrar em uma função com uma matriz, modificá-la

e não retornar nada....

pensei que poderia ser algo do tipo(exemplo para imprimir a matriz):

void imprimeMatriz (int *matriz[][],int linha,int coluna){
       int count1,count2;
       for (count1 = 0;count1 < coluna; count1++){
            for (count2 = 0;count2 < linha; count2++){
                 printf("%d ",*matriz[count2][count1]);
            }
            printf("\n");
       }
}

OBS: coloquei este exemplo so para vocês perceberem minha duvida de MANIPULAR ponteiros para matrizes... é assim mesmo? *matriz[count2][count1] ???

Editado por Siele =D
Link para o comentário
Compartilhar em outros sites

  • 0

Opa!

Ok, entendi a sua dúvida agora. Para passar um array n-dimensional (com n inteiro maior que ou igual a 2) para uma função, você deve fornecer também os últimos n - 1 índices do array (o primeiro pode ser passado também, mas não é obrigatório). O seu código deveria ficar assim:

...

#define coluna 3

void imprimeMatriz( int matriz[][ coluna ], int linha ) {
       int count1, count2;

       for ( count1 = 0; count1 < coluna; count1++) {
            for ( count2 = 0; count2 < linha; count2++ ) {
                 printf( "%d ", matriz[ count2 ][ count1 ] );
            }

            printf( "\n" );
       }
}

...

Mas se você deseja passar um ponteiro para uma matriz junto com suas dimensões (número de colunas e número de linhas), a sua matriz deve ser criada alocando memória dinamicamente. Para isso, pode-se usar a função malloc para alocar memória e free para liberar o espaço alocado. Veja este link sobre alocação dinâmica de arrays multidimensionais.

Boa sorte!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...