? Uma das partes fundamentais de qualquer programa é a variável. A variável representa um valor armazenado na memória do computador . A maneira em que os programas acessar dados é importante , porém: usando coleções de dados chamados matrizes , torna-se possível para os programadores a realizar cálculos indesejadas usando valores desconhecidos na memória. Ao passar fora dos limites de uma matriz , um programador essencialmente começa a possivelmente alterar os valores na memória que podem representar a funcionalidade importante para o programa ou para todo o sistema em si. Memória de computador
memória em um sistema de computador é organizado em seqüência. Isto significa que as variáveis declaradas residirá em memória ao lado de outras variáveis , ou outras partes de dados . Slots de memória são divididos por tipo , de modo que a memória suficiente é reservado para cada tipo. Por exemplo , se um programa deixa de lado uma variável inteira e uma variável de caráter , seria designar dois bytes de memória para o número inteiro , então um byte para o personagem.
Arrays
Programadores
também pode anular matrizes de valores , que representam uma coleção de valores sob o mesmo nome da variável. Então, ao invés de declarar cinco variáveis inteiras diferentes que representam uma lista , o programador declara uma matriz de cinco valores , que residem sob o nome da matriz e são acessíveis referenciando índice baseado em zero da matriz. Assim, quando um programador deixa de lado uma matriz , o computador deixa de lado a memória contínua suficiente para a quantidade de valores da matriz irá realizar . Assim, se o programador declara uma matriz de cinco inteiros , o computador irá anular o próximo espaço disponível na memória que pode armazenar cinco números inteiros.
Arrays e Out of Bounds
O programador pode declarar uma matriz e acessar seus valores através de acesso aos índices que contêm os valores . No entanto, em algumas linguagens de programação , como C , não há nada para parar o programador acidentalmente tentando acessar um índice que não fazem parte da matriz. Por exemplo, um programador usando a matriz de cinco inteiros podem tentar acessar um sexto valor. O programador foi " fora dos limites " da matriz: o valor não existe como parte da matriz , então agora o programador está tentando acessar memória fora do conjunto
Necessidade. de verificação de limites
indo fora dos limites da matriz , o programador está agora potencialmente manipulação de dados em outros locais de memória. Muito provavelmente , o programador não tem idéia do que é neste local de memória : pode ser dados para outra variável , ou um local de referência para outra função. Se uma linguagem de programação não verifica os limites , não permitindo programadores para acessar dados fora de um array, o programador poderia reescrever o código que executa funções críticas , de faz com que o programa atual para exibir um comportamento não intencional.
< Br >