Aracılığıyla paylaş


C6386

C6386 Uyarı: arabellek taşması: < arabelleği adı > erişme, yazılabilir <size1> boyutudur ancak <size2> bayt bayt yazılabilir: satır: x, y

Bu uyarı, belirtilen arabellek yazılabilir kapsamını yazma için kullanılan dizin prosedürde olabileceğini gösterir.Bu, arabellek taşmasına neden olabilir.

Örnek

Aşağıdaki kod bu uyarı oluşturur ve C6201:

#define MAX 25

void f ( )
{
  char ar[MAX];
  //Code ...
  ar[MAX] = '\0';
}

Her iki uyarı düzeltmek için şu kodu kullanın:

#define MAX 25

void f ( )
{
   char a[MAX];
   // code...
   a[MAX - 1] = '\0';
} 

Ayrıca bkz.

Başvuru

C6201