Sdílet prostřednictvím


C6063

upozornění C6063: chybějící argument řetězec <function> odpovídající převod specifikátor <number>

Toto upozornění znamená Nedostatek argumentů jsou poskytovány odpovídající řetězec formátu; alespoň jeden chybí argumenty je řetězec.Tato vada může způsobit zhroucení a přetečení vyrovnávací paměti (Pokud volaná funkce je sprintf rodiny), stejně jako potenciálně nesprávný výstup.

Příklad

Následující kód vygeneruje toto upozornění:

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

Chcete-li opravit toto upozornění poskytnout další argumenty jak je ukázáno v následujícím kódu:

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

Následující kód odstraňuje toto upozornění pomocí funkce pro manipulaci s bezpečné řetězec:

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

Viz také

Referenční dokumentace

sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l