Freigeben über


C6388

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

Diese Warnung gibt an, dass im angegebenen Kontext ein unerwarteter Wert verwendet wird.Diese Warnung wird i. d. R. gemeldet, wenn Werte als Argumente an eine Funktion übergeben werden, die nicht erwartet wurden.

Beispiel

Der folgende C++-Code generiert diese Warnung, weil DoSomething einen NULL-Wert erwartet, aber ein potenzieller Wert, der nicht NULL ist, möglicherweise übergeben wird:

#include <string.h>
#include <malloc.h>
#include <sal.h>

void DoSomething( _Pre_ _Null_ void* pReserved );

void f()
{
    void* p = malloc( 10 );
    DoSomething( p );  // Warning C6388
    // code...
    free(p);
}

So korrigieren Sie die Warnung unter Verwendung des folgenden Beispielcodes

#include <string.h>
#include <malloc.h>
#include <sal.h>

void DoSomething( _Pre_ _Null_ void* pReserved );
void f()
{
    void* p = malloc( 10 );
    if (!p)
    {
        DoSomething( p );  
    }
    else
    {
        // code...
        free(p);
    }
}

Siehe auch

Weitere Ressourcen

Übersicht über Anmerkungen