Compartilhar via


C6274

Aviso C6274: caractere não passado como o parâmetro <number> Quando o caractere é necessária na chamada para <function>

Este aviso indica que a seqüência de caracteres de formato Especifica que um caractere é necessário (por exemplo, um %c ou %C especificação), mas um não inteiro como um float, seqüência ou struct que está sendo passado.Esse defeito é a probabilidade de causar saída incorreta.

Exemplo

O código a seguir gera este aviso:

#include <stdio.h>
#include <string.h>

void f(char str[])
{
   char buff[5];
    
   sprintf(buff,"%c",str);
}

Para corrigir esse aviso, use o código a seguir:

#include <stdio.h>
#include <string.h>

void f(char str[])
{
   char buff[5];
 
   sprintf(buff,"%c",str[0]);
}

O código a seguir usa a função de manipulação de cadeia de caracteres seguras, sprintf_s, para corrigir esse aviso:

#include <stdio.h>
#include <string.h>

void f(char str[])
{
   char buff[5];
  
   sprintf_s(buff,5,"%c", str[0]);
}