Поделиться через


C6385

Обновлен: Ноябрь 2007

C6385

Предупреждение C6385: недопустимые данные. При доступе к <имя буфера> считываемый размер равен <размер1> байт, но можно прочесть <размер2> байт: строки x, y.

Это предупреждение указывает, что считываемый фрагмент указанного буфера может быть меньше индекса, используемого для его чтения. Попытка чтения данных вне допустимого диапазона приводит к переполнению буфера.

Пример

Это предупреждение создается следующим кодом:

void f(int i)
{
   char a[20];
   char j;
   if (i <= 20)
   {
      j = a[i];
   }
}

Для устранения этого предупреждения используйте следующий код:

void f(int i)
{
   char a[20];
   char j;
   if (i < 20)
   {
      j = a[i];
   }
}