Ferramentas do usuário

Ferramentas do site


prog2:alocacao_dinamica_de_matrizes

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Ambos lados da revisão anterior Revisão anterior
Próxima revisão
Revisão anterior
prog2:alocacao_dinamica_de_matrizes [2019/09/23 13:30]
maziero [Alocação dinâmica de matrizes]
prog2:alocacao_dinamica_de_matrizes [2019/10/15 16:45] (atual)
maziero
Linha 19: Linha 19:
 Neste método, os elementos da matriz são alocados em um único vetor, linearmente. Os elementos da matriz são acessados explicitamente através de aritmética de ponteiros. Neste método, os elementos da matriz são alocados em um único vetor, linearmente. Os elementos da matriz são acessados explicitamente através de aritmética de ponteiros.
  
-{{matriz-unica.png |}}+{{  matriz-unica.png |}}
  
 <code c> <code c>
Linha 48: Linha 48:
 A vantagem desta técnica é que o acesso aos elementos da matriz usa a mesma sintaxe do acesso a uma matriz estática, o que torna a programação mais simples. Entretanto, sua localidade de referências é pior que na abordagem anterior. A vantagem desta técnica é que o acesso aos elementos da matriz usa a mesma sintaxe do acesso a uma matriz estática, o que torna a programação mais simples. Entretanto, sua localidade de referências é pior que na abordagem anterior.
  
-{{ matriz-linhas-separadas.png |}}+{{  matriz-linhas-separadas.png |}}
  
 <code c> <code c>
Linha 81: Linha 81:
 Além de usar a mesma sintaxe do acesso que o método anterior uma matriz estática, esta abordagem tem mais duas vantagens: somente precisa de duas operações de alocação de memória e todos os elementos da matriz estão alocados sequencialmente na memória, o que facilita operações de cópia de matrizes (usando ''​memcpy''​) ou de leitura/​escrita da matriz para um arquivo (usando ''​fread''​ ou ''​fwrite''​). Além de usar a mesma sintaxe do acesso que o método anterior uma matriz estática, esta abordagem tem mais duas vantagens: somente precisa de duas operações de alocação de memória e todos os elementos da matriz estão alocados sequencialmente na memória, o que facilita operações de cópia de matrizes (usando ''​memcpy''​) ou de leitura/​escrita da matriz para um arquivo (usando ''​fread''​ ou ''​fwrite''​).
  
-{{matriz-linhas-contiguas.png |}}+{{  matriz-linhas-contiguas.png |}}
  
 <code c> <code c>
Linha 114: Linha 114:
 O método anterior pode ser modificado, juntando os ponteiros e as linhas da matriz em uma única área de memória: O método anterior pode ser modificado, juntando os ponteiros e as linhas da matriz em uma única área de memória:
  
-{{matriz-unica-2.png |}}+{{  matriz-unica-2.png |}}
  
 <code c> <code c>
prog2/alocacao_dinamica_de_matrizes.1569256223.txt.gz · Última modificação: 2019/09/23 13:30 por maziero