Condividi tramite


C6387

avviso C6387: <argomento> può essere <valore>: questa condizione non soddisfa la specifica della funzione <nome funzione>: Righe: x, y

L'avviso viene generato se a un parametro di funzione annotato viene passato un valore non previsto. L'avviso viene generato, ad esempio, passando un valore potenzialmente null a un parametro contrassegnato con [Pre( Null=No )].

Esempio

Il codice seguente genera questo avviso perché a f(char *) viene passato un parametro null:

#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
}

Per risolvere il problema, utilizzare il codice seguente:

#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);
}

Vedere anche

Riferimenti

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

Concetti

Cenni preliminari sull'annotazione