Это не с массивом "глюк". Тут все серьезней и требуется помощь специалиста. Самолечением я бы вам не рекомендовал заниматься.
===
М-да... В справке вы не нашли. Вы что, под фонарем искали? Или типа "не читатель, а писатель"?.. в форумы. Там прям в самом начале, где о массивах (Операции с массивами).
Впрочем, этот ваш пост будет полезен для тех, у кого аналогичная дисфункция восприятия. Не расстраивайтесь! Вон, у Том Круза дисфункция с письмом, у вас - противоположная ситуация - с чтением. И ничего - жить с этим можно.
Ну да. Набираем в гугле:
массивы site:docs.mql4.com
и попадаем в [Операции с массивами].
.
А глюк в натуре прикольный ;-)
Да ладно, чего уж там, сам через раз на подобные штуки натыкаюсь. Выход за пределы массива - обычная ошибка даже у довольно опытных. Например, не поставил в цикле ArrayResize() - вот тебе и выход за пределы массива. Просто я из-за таких мелочей не завожу ветку, вот и все.
Компилятор вряд ли когда-нибудь станет настолько умным, чтобы правильно интерпретировать ошибки исполнения.
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
когда выходим за границы строкового массива возникает непонятный глюк.
//объявляем строковый массив размером 5
далее при чтении массива в цикле от нуля до тысячи, скажем, при i от 0 до 5 будет значение 5, которое собственно никто и не присвоял, а от 5 до тысячи будет значение "ТЕСТ".
Полнейший глюк. Этот глюк можно и не заметить, так как если предварительно присвоить значения всем предыдущим, то они не испортятся...
На закономерный вопрос зачем выходить за границы массива, сразу скажу, что я так попробовал выяснить что же на самом деле показывает размерность массива, считается от нуля или от единицы. В справке я этого не нашел, поэтому попробовал работает ли присвоение с индексом равным размерности массива, и поспешил сделать вывод что раз работает значит размерность считается от нуля. Типа ноль это одна ячейка. А когда нужно было перелить из строкового массива в числовой столкнулся с необъяснимым глюком, никак последнее значение не копируется...
На целочисленные массивы этот глюк не распространяется....
Вобщем, если у кого глюк происходит, знайте что размер массива показывает сколько ячеек содержит массив. Размер всегда на единицу больше, так как ячейки нумеруются начиная с нуля.