Para cada uma das sentenças abaixo, marque (V) para Verdadeiro ou (F) para Falso.
( ) A declaração int v[]; sem inicialização é válida em C.

Passo 1

O enunciado pergunta se a declaração
int v[];
sem especificar tamanho e sem inicialização é válida em C.
O conteúdo envolvido é declaração de arrays em C, onde precisamos conhecer as regras de tipo incompleto e inferência de tamanho.

Passo 2

Em C, toda declaração de array deve ou
  1. especificar um tamanho explícito, por exemplo
    int v[10];
    ou
  2. fornecer um inicializador para que o compilador infira o tamanho, por exemplo
    int v[] = {1, 2, 3};

Passo 3

Não basta o array ficar sem inicializador: declarar
int v[];
gera um tipo incompleto (array sem tamanho) sem vínculo extern, e isso não é permitido pelo padrão C. O compilador em geral reclama “array size missing in ‘v’”.

Resposta

(F)

Exercícios relacionados