C6386
تحذير C6386: تجاوز سعة احتياطي: الوصول إلى < اسم احتياطي >، الحجم قابل للكتابة هو قد يكتب <size1> وحدات البايت، ولكن <size2> وحدات البايت: الخطوط: س، ص
وهذا تحذير يشير إلى أن مدى قابل للكتابة احتياطي المحدد قد يكون أصغر من الفهرس المستخدم للكتابة عليه. قد يؤدي تجاوز سعة احتياطي.
مثال
تنشئ التعليمة البرمجية التالية هذا التحذير و C6201:
#define MAX 25
void f ( )
{
char ar[MAX];
//Code ...
ar[MAX] = '\0';
}
لحل كل من التحذيرات، استخدم تعليمات برمجية التالية:
#define MAX 25
void f ( )
{
char a[MAX];
// code...
a[MAX - 1] = '\0';
}