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


Предупреждение C6411

Потенциально считывая недопустимые данные из буфера.

Замечания

Данное предупреждение указывает, что значение индекса, которое используется для чтения из буфера, может превышать размер буфера для чтения. Средство анализа кода может сообщить об этом предупреждении в ошибке. Ошибка может возникать, если она не может уменьшить сложное выражение, представляющее размер буфера, или индекс, используемый для доступа к буферу.

Имя анализа кода: POTENTIAL_READ_OVERRUN

Пример

Следующий код создает это предупреждение.

char *a = new char[strlen(InputParam)];
delete[] a;
a[10];

Следующий код исправляет эту ошибку.

int i = strlen(InputParam);
char *a = new char[i];
if (i > 10) a[10];
delete[] a;