次の方法で共有


C6387

更新 : 2007 年 11 月

警告 C6387: <引数> は <値> である可能性があります: この動作は、関数 <関数名> の指定に従っていません: 行: x, y

この警告は、注釈が付けられた関数パラメータに予期しない値が渡されたときに発生します。たとえば、[Pre( Null=No )] 属性でマークが付けられたパラメータに、null になる可能性がある値が渡されると、この警告が生成されます。

使用例

次に示すコードでは、null パラメータが f(char *) に渡されるため、この警告が生成されます。

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

この警告を解決するには、次のコードを使用します。

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

参照

概念

注釈の概要

参照

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