Para cada uma das sentenças abaixo, marque (V) para Verdadeiro ou (F) para Falso.
( ) Se um programa tenta acessar uma posição fora dos limites de um vetor (ex: acessar vetor[10] em um vetor de 10 posições), o compilador C sempre irá gerar um erro de compilação.

Passo 1

O enunciado pergunta se, em C, ao acessar uma posição fora dos limites de um vetor (por exemplo, fazer vetor[10] num vetor com 10 elementos), o compilador sempre acusa erro de compilação. O conteúdo aqui é comportamento de arrays em C e a diferença entre erro de compilação e comportamento indefinido em tempo de execução.

Passo 2

Em C não há verificação automática de limites de vetor nem em tempo de compilação nem em tempo de execução. O compilador simplesmente traduz o código e assume que você sabe o que está fazendo. Se você acessar vetor[10] em um vetor de tamanho 10, o compilador não vai reclamar — isso é undefined behavior, que pode causar falha em tempo de execução, corrupção de memória ou até parecer funcionar “normalmente”, mas nunca resulta num erro de compilação.

Resposta

(F)

Exercícios relacionados