﻿# V594\. Pointer to array is out of array bounds\.

Анализатор обнаружил потенциальную ошибку при работе с указателями\. В программе есть выражение, при вычислении которого получается, что указатель вышел за границу массива\.

Проясним это простым примером:

```cpp
int A[10];
fill(A, A + sizeof(A), 33);
```

Мы хотим присвоить всем элементам массива значение 33\. Ошибка в том, что указатель "A \+ sizeof\(A\)" ссылается далеко за пределы массива\. В результате, мы изменим больше ячеек памяти, чем планировалось\. Результат этой ошибки непредсказуем\.

Правильный вариант кода:

```cpp
int A[10];
fill(A, A + sizeof(A) / sizeof(A[0]), 33);
```