Compartilhar via


C6054

Aviso C6054: a cadeia de caracteres <variável> não pode ser terminada com zero

Esse aviso indica que uma função que requerem a cadeia de caracteres terminada zero esteve passada uma cadeia de caracteres terminada diferente de zero.Uma função que aguarda uma cadeia de caracteres terminada zero passará de extremidade do buffer de busca nulo.Este defeito pode causar um erro explorável de excesso de buffer ou falhar.O programa deve ter certeza de que a cadeia de caracteres termina com um valor nulo.

Exemplo

O código a seguir gera este aviso:

#include <sal.h>

void func( _In_z_ wchar_t* wszStr );

void g ( )
{
    wchar_t wcArray[200];
    func(wcArray); // Warning C6054
}

Para corrigir esse aviso, com wcArray antes de encerrar função de chamada func() conforme mostrado no código de exemplo a seguir:

#include <sal.h>

void func( _In_z_ wchar_t* wszStr );

void g( )
{
    wchar_t wcArray[200]; 
    wcArray[0]= '\0';
    func(wcArray);
}

Consulte também

Referência

C6053

Outros recursos

Visão geral de anotação

NullTerminated