Freigeben über


C6387

Aktualisiert: November 2007

C6387

Warnung C6387: <Argument> kann <Wert> sein: Dies entspricht nicht der Funktionsspezifikation von <Funktionsname>: Zeilen: x, y

Diese Warnung wird ausgelöst, wenn einem Funktionsparameter mit Anmerkungen ein unerwarteter Wert übergeben wird. Diese Warnung wird beispielsweise generiert, wenn ein potenzieller NULL-Wert an einen Parameter übergeben wird, der mit [Pre (Null=No)] markiert ist.

Beispiel

Im folgenden Code wird diese Warnung generiert, da ein NULL-Parameter an f(char *) übergeben wird:

#include <codeanalysis/sourceannotations.h>
using namespace vc_attributes;

[returnvalue:Post(Null=Yes)] char * g();

void f([Pre (Null=No)] char *pch);

void main()
{
    char *pCh=g();
    f(pCh); //C6387
}

So korrigieren Sie die Warnung unter Verwendung des folgenden Codes

#include <codeanalysis/sourceannotations.h>
using namespace vc_attributes;

[returnvalue:Post(Null=No)] char * g();

void f([Pre (Null=No)] char *pch);

void main()
{
    char *pCh=g();
    f(pCh);
}

Siehe auch

Konzepte

Übersicht über Anmerkungen

Referenz

strlen, strlen_l, wcslen, wcslen_l, _mbslen, _mbslen_l, _mbstrlen, _mbstrlen_l