C6387

تحذير C6387: وقد <وسيطة> <القيمة>: وهذا لا تلتزم إلى مواصفات دالة < اسم دالة >: الخطوط: س، ص

Th هو تحذير هو raهوed إذا معلمة دالة توضيحي هو تمرير القيمة غير متوقعة. على سبيل المثال، تمرير القيمة خالية من المحتمل أن يكون لإحدى معلمات التي هو عليها [ما قبل (Null (خالية) = لا)] إنشاء سمة th هو التحذير.

مثال

تنشئ التعليمة البرمجية التالية th هو تحذير لأن معلمة فارغة هو التي تم تمريرها إلى 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

المبادئ

نظرة عامة حول التعليقات التوضيحية