Freigeben über


Warnung C6063

Fehlendes Zeichenfolgenargument für 'Funktion', das dem Konvertierungsbezeichner 'number' entspricht.

Hinweise

Diese Warnung gibt an, dass nicht genügend Argumente bereitgestellt werden, um einer Formatzeichenfolge zu entsprechen. Mindestens eines der fehlenden Argumente ist eine Zeichenfolge. Dieser Fehler kann Abstürze und Pufferüberläufe verursachen (wenn die aufgerufene Funktion der sprintf Familie ist) und auch potenziell falsche Ausgabe.

Codeanalysename: MISSING_STRING_ARGUMENT_TO_FORMAT_FUNCTION

Beispiel

Der folgende Code generiert diese Warnung:

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

Um diese Warnung zu korrigieren, entfernen Sie den nicht verwendeten Formatbezeichner, oder geben Sie die erforderlichen Argumente an, wie im folgenden Code gezeigt:

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

Der folgende Code korrigiert diese Warnung mithilfe der Funktion für sichere Zeichenfolgenmanipulation:

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

Siehe auch

Syntax der Formatspezifikation: printf- und wprintf-Funktionen
sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l