Partilhar via


Aviso do compilador (nível 4) C4295

'array' : array é muito pequeno para incluir um caractere nulo de terminação

Observações

Uma matriz foi inicializada, mas o último caractere na matriz não é um nulo; Acessar a matriz como uma cadeia de caracteres pode produzir resultados inesperados.

Example

O exemplo a seguir gera C4295. Para corrigir este problema, pode declarar o tamanho do vetor maior para incluir um nulo de terminação da cadeia de caracteres do inicializador, ou pode usar uma lista de inicializadores de vetor para deixar clara a intenção de que este é um vetor de char, não uma cadeia de caracteres terminada em nulo.

// C4295.c
// compile with: /W4

int main() {
   char a[3] = "abc";           // C4295
   char b[3] = {'d', 'e', 'f'}; // No warning
   a[0] = b[2];
}