C6064
Aviso C6064: argumento integer ausente para <função> correspondente ao especificador de conversão <número>
Esse aviso indicar que não são argumentos são fornecidos para corresponder a uma cadeia de formato e um dos argumentos ausentes é um inteiro.Este defeito pode causar saída incorretas.
Exemplo
O código a seguir gerenciar esse aviso como um número incorreto de argumentos foi usado na chamada de sprintf e o argumento ausente era um inteiro:
#include <string.h>
void f( )
{
char buff[15];
char *string="Hello, World";
sprintf(buff,"%s %d", string);
}
Para corrigir esse aviso, especificar argumentos ausentes conforme mostrado no seguinte código:
#include <string.h>
void f( )
{
char buff[15];
char *string = "Hello, World";
sprintf(buff,"%s %d",string, strlen(string));
}
A função segura de manipulação de cadeia de caracteres dos seguintes usos de código, sprintf_s para corrigir esse aviso:
#include <string.h>
void f( )
{
char buff[15];
char *string="Hello World";
sprintf_s(buff,sizeof(buff),"%s %d", string, strlen(string));
}