警告 C6506:无效的批注: <name> 属性只能用于指针值或数组类型值
此警告意味着对指针或数组类型之外的类型使用了属性。Access、Tainted 和 Valid 属性可以用于所有的数据类型。其他属性(如 ValidBytesConst、ValidElementsConst、ElementSize 和 NullTerminted)支持指针、指向成员的指针或数组类型。有关属性和受支持的数据类型的完整列表,请参见 批注属性。
示例
下面的代码生成此警告:
#include<sal.h>
void f(_Out_ char c)
{
c = 'd';
}
若要更正此警告,请使用指针或数组类型,如下面的代码示例所示:
#include<sal.h>
void f(_Out_ char *c)
{
*c = 'd';
}