Um vetor ocupa varas referências de memória ou ele possui apenas uma referência para todas as informações?
Um vetor ocupa varas referências de memória ou ele possui apenas uma referência para todas as informações?
Olá Gabriel! Tudo bem?
Antes de tudo, peço desculpas pela demora em te dar uma resposta.
Os vetores são uma sequência de vários valores (ou objetos) armazenados sequencialmente na memória, e utilizam a mesma variável para acessar esses valores. Podemos entender também como sendo uma lista de elementos de um mesmo tipo.
Cada elemento dessa lista pode ser acessado individualmente através do índice que representa aposição do vetor onde esse elemento está.
Dito isso... como o vetor realmente se comporta na memória? Qual seu formato?
Para entendermos melhor isso, vamos analisar a imagem abaixo: ↓
Repare que temos um vetor de inteiros, certo? E esse vetor possui 10 posições.
Cada uma das posições é ocupada por um int
, e sabemos que o tipo primitivo int
tem um tamanho que equivale a 4 bytes, conforme vemos na tabela abaixo:
Tamanho do tipo int
= 32bits
1 byte = 8 bits
32/8 = 4 bytes
Os elementos do vetor são armazenados sequencialmente na memória do computador.
Assim, na figura, se cada valor de tipo int ocupar 4 bytes de memória, teremos 40 bytes consecutivos reservados na memória do computador para armazenar todos os valores do vetor.
Se ainda tiver dúvidas nesse assunto, é só falar! 😉
Bons estudos!