Udostępnij za pośrednictwem


C6063

Ostrzeżenie C6063: Brak argumentu ciąg do <function> odpowiadające specyfikatora konwersji <number>

To ostrzeżenie wskazuje, że świadczone są za mało argumentów odpowiadać ciągu formatu; co najmniej jeden z argumentów brak jest ciągiem.Wada ten może spowodować awarię i przepełnienia bufora (jeśli jest wywoływana funkcja sprintf rodziny), jak również potencjalnie nieprawidłowych danych wyjściowych.

Przykład

Poniższy kod generuje ostrzeżenie to:

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

Aby poprawić to ostrzeżenie, należy zapewnić dodatkowe argumenty, jak pokazano w poniższym kodzie:

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

Następujący kod usuwa to ostrzeżenie przy użyciu funkcji manipulacji bezpieczne ciąg:

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

Zobacz też

Informacje

sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l