Udostępnij za pośrednictwem


C6387

Ostrzeżenie C6387: <argument> może być <value>: nie pasuje to do specyfikacji funkcji <function name>: linie: x, y

To ostrzeżenie jest wywoływane, jeśli parametr z adnotacją funkcji przekazuje nieoczekiwaną wartość.Na przykład, przekazanie potencjalnej wartości null do parametru, który jest oznaczony adnotacją _In_ generuje to ostrzeżenie.

Przykład

Poniższy kod generuje to ostrzeżenie, ponieważ parametr o wartości null jest przekazany do funkcji f(char *):

#include <sal.h>

_Post_ _Null_ char * g();

void f(_In_ char *pch);

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

Aby poprawić to ostrzeżenie, należy użyć następującego kodu:

#include <sal.h>

_Post_ _Notnull_ char * g();

void f(_In_ char *pch);

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

Zobacz też

Informacje

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

Inne zasoby

Omówienie adnotacji