Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1496
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Спасибо! Я полдня поработал с отладчиком и понял, почему не использую его каждый день — это занимает слишком много времени, мне проще просто поставить Print в функцию, чтобы быстро получить информацию.
Но я начал это потому, что хотел понять, почему всем элементам массива сразу присваивается 0. Это уже число по своей природе и что может привести к неправильному результату в дальнейшем. Как бы вы поступили? ArrayInitialize(arr1,EMPTY_VALUE) это лучшее решение или что-то другое?
Но я начал это потому, что хотел понять, почему всем элементам массива сразу присваивается 0. Это уже число по своей природе и что может привести к неправильному результату в дальнейшем. Как бы вы поступили? ArrayInitialize(arr1,EMPTY_VALUE) это лучшее решение или что-то другое?
Массивам не присваиваются значения нулей. Это вам просто повезло, скажем так случайно.
Если не инициализировать массив, то в нём зачастую оказывается мусор.
на вашем скрине, где вы указываете, что там не корректное значение вместо нуля могло оказаться любое число.
Сохраняю данные в файл.
Достаю данные из файла
GetLastError() Ошибку выдаёт что - Испорченный параметр типа string
Если выводить массив aS[0] через Print(), то шрифт отличается от остального.
Если просто выводить параметр tr , то = 0
Здравствуйте, подскажите пожалуйста.
Сохраняю данные в файл.
Достаю данные из файла
GetLastError() Ошибку выдаёт что - Испорченный параметр типа string
Если выводить массив aS[0] через Print(), то шрифт отличается от остального.
Если просто выводить параметр tr , то = 0
сам по себе файл не пробовали посмотреть ?
вы записываете бинарные значения, а читаете текстовую строку..
сам по себе файл не пробовали посмотреть ?
вы записываете бинарные значения, а читаете текстовую строку..
у импорта сделал так
у экспорта так
стало лучше, но первый импорт строки первого параметра (aS[0]) всегда ошибка.
далее
tr - отражает переведённую строку в int (aS[0])

Файл просматривается, всё на своём месте.

Но импорт первого параметра aS[0] первой строки, не переводит в int.Если не инициализировать массив, то в нём зачастую оказывается мусор.
Спасибо, я даже вспомнил, что уже встречался с таким (тут 0 меня смутил). Жаль, что в документации это не указано, приходится такие вещи держать в голове.
у импорта сделал так
у экспорта так
стало лучше, но первый импорт строки первого параметра (aS[0]) всегда ошибка.
далее
tr - отражает переведённую строку в int (aS[0])
Файл просматривается, всё на своём месте.
Но импорт первого параметра aS[0] первой строки, не переводит в int.Как такое может быть? - первый aS[0] всегда битый (ошибка 5040)

Как такое может быть? - первый aS[0] всегда битый (ошибка 5040)
поставьте в Export и Import кодировку UTF-8 (или по крайней мере одинаковую, однобайтовую без BOM)
(посмотрите файл в бинарном виде - там наверняка первые два байта BOM, то есть он юникод) - вы когда FileSeek(0,SEEK_SET) и далее чтение, то вы их считываете в строку и конвертация фейлится
BOM
Ну похоже получилось. Правда один раз всё же не отражает , но потом при удаления файла хоть перестало глючить.
Большое Вам СПАСИБО!