Advertencia C6063

Falta el argumento de cadena para 'function' que corresponde al especificador de conversión 'number'.

Comentarios

Esta advertencia indica que no se proporcionan suficientes argumentos para que coincidan con una cadena de formato. Al menos uno de los argumentos que faltan es una cadena. Este defecto puede provocar bloqueos y desbordamientos de búfer (si la función llamada es de la sprintf familia) y también una salida potencialmente incorrecta.

Nombre del análisis de código: MISSING_STRING_ARGUMENT_TO_FORMAT_FUNCTION

Ejemplo

El código siguiente genera esta advertencia:

#include <stdio.h>
void f( )
{
  char buff[15];
  sprintf(buff, "%s %s", "Hello, World!");
}

Para corregir esta advertencia, quite el especificador de formato sin usar o proporcione los argumentos necesarios como se muestra en el código siguiente:

#include <stdio.h>
void f( )
{
  char buff[15];
  sprintf(buff, "%s %s ", "Hello","World");
}

El código siguiente corrige esta advertencia mediante la función de manipulación segura de cadenas:

#include <stdio.h>
void f( )
{
  char buff[15];
  sprintf_s( buff, sizeof(buff),"%s", "Hello, World!" );
}

Consulte también

Sintaxis de especificación de formato: funciones printf y wprintf
sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l