Поделиться через


C6387

Предупреждение C6387: <аргумент> может быть равен <значение>: это не соответствует спецификации функции <имя функции>: строки x, y.

Это предупреждение возникает, если параметру функции с аннотацией передается непредвиденное значение.Например, заведомо передавая значение NULL параметру, помеченному как _In_, появится данное предупреждение.

Пример

Это предупреждение возникает в следующем коде, поскольку параметр null передается f(char *):

#include <sal.h>

_Post_ _Null_ char * g();

void f(_In_ char *pch);

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

Для устранения этого предупреждения используйте следующий код:

#include <sal.h>

_Post_ _Notnull_ char * g();

void f(_In_ char *pch);

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

См. также

Ссылки

strlen, wcslen, _mbslen, _mbslen_l, _mbstrlen, _mbstrlen_l

Другие ресурсы

Общие сведения о заметках