C6302
C6302 de aviso: incompatibilidade de cadeia de caracteres de formato: cadeia de caracteres passada como o número do parâmetro> <quando a cadeia de caracteres larga seja necessária na chamada <para funcionar>
Esse aviso indicar que a cadeia de caracteres de formato que especifica uma cadeia de caracteres larga é necessária.Porém, uma cadeia de caracteres está sendo passada.Este defeito provavelmente causar uma falha ou um dano de alguma forma.
Exemplo
O código de exemplo a seguir gerenciar esse aviso como uma cadeia de caracteres é passada para a função de wprintf :
#include<stdio.h>
void f()
{
char buff[5] = "hi";
wprintf(L"%s", buff);
}
Os seguintes usos de exemplo %hs de código especificar uma cadeia de caracteres de byte único com a função de wprintf :
#include<stdio.h>
void f()
{
char buff[5] = "hi";
wprintf(L"%hs", buff);
}
A função segura wprintf_s de manipulação de cadeia de caracteres dos seguintes código de exemplo usa para corrigir esse aviso:
#include<stdio.h>
void f()
{
char buff[5] = "hi";
wprintf_s(L"%hs", buff);
}