C6274
Aggiornamento: novembre 2007
C6274
avviso C6274: non carattere passato come parametro <numero> mentre nella chiamata a <funzione> è richiesto un carattere
L'avviso indica che nella stringa di formato è specificato che è richiesto un carattere, ad esempio una specifica %c o %C, ma è stato passato un valore diverso da integer, ad esempio un valore float, una struttura o una stringa. È probabile che l'errore provochi un output non corretto.
Esempio
Il codice seguente genera questo avviso:
#include <stdio.h>
#include <string.h>
void f(char str[])
{
char buff[5];
sprintf(buff,"%c",str);
}
Per risolvere il problema, utilizzare il codice seguente:
#include <stdio.h>
#include <string.h>
void f(char str[])
{
char buff[5];
sprintf(buff,"%c",str[0]);
}
Per risolvere il problema, nel codice seguente viene utilizzata la funzione protetta di modifica delle stringhe, sprintf_s:
#include <stdio.h>
#include <string.h>
void f(char str[])
{
char buff[5];
sprintf_s(buff,5,"%c", str[0]);
}