Ошибки, баги, вопросы - страница 3040
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Так уже давно. mql строки очень не любят нуль символы внутри строки и в литералах, в функциях тоже.
Единственный нормальный способ - переводить в массив три строки с завершающим нулем.
Т.е. такое поведение как сейчас было сделано намеренно несколько лет назад. Причин не знаю.А какая функция, кроме StringToCharArray неправильно с внутренними нулями работает?
Например StringToShortArray - работает без ошибок
StringCompare раньше неправильно работала, но это уже давно исправили
Что касается StringLen, то
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ошибки, баги, вопросы
A100, 2019.05.15 13:45
Просто частично исправили ошибки ... почему бы и нет!? На моей памяти StringLen всегда работал правильно (по крайней мере в x32)Точно не помню, в один прекрасный момент строка с нулем внутри обрезалась до нуля, может stringconcatenate, может и с простыми строковыми операциями.
Отличный форум, получил на отправке ответа днем. Ответ само собой потерялся.
Понедельник, середина дня..
Несколько терминалов свернуты. При этом каждый терминал выдает алерты в свои алерт-окна - не свернуты.
Как понять, какое алерт-окно соответствует какому терминалу?
Несколько терминалов свернуты. При этом каждый терминал выдает алерты в свои алерт-окна - не свернуты.
Как понять, какое алерт-окно соответствует какому терминалу?
Про уникальный ID терминала мне ничего не известно, но можно добавить в алерт AccountInfoString(ACCOUNT_COMPANY). Я не думаю, что у кого-либо несколько экземпляров MT5 будут залогинены одновременно в одну и ту же брокерскую компанию, хотя гипотетически такое всё же может быть целесообразно, если необходимо сидеть на разных счетах одного брокера. В таком случае (на худой конец) может сгодиться AccountInfoInteger(ACCOUNT_LOGIN) или AccountInfoString(ACCOUNT_SERVER).
Про уникальный ID терминала мне ничего не известно, но можно добавить в алерт AccountInfoString(ACCOUNT_COMPANY). Я не думаю, что у кого-либо несколько экземпляров MT5 будут залогинены одновременно в одну и ту же брокерскую компанию, хотя гипотетически такое всё же может быть целесообразно, если необходимо сидеть на разных счетах одного брокера. В таком случае (на худой конец) может сгодиться AccountInfoInteger(ACCOUNT_LOGIN) или AccountInfoString(ACCOUNT_SERVER).
Да, в свои Алерты можно запихать любые данные идентификации. Но вопрос касается общего случая.
А какая функция, кроме StringToCharArray неправильно с внутренними нулями работает?
Например StringToShortArray - работает без ошибок
StringCompare раньше неправильно работала, но это уже давно исправили
Что касается StringLen, то
Вы правы, изменил поведение StringToCharArray, теперь на всю длину строки, а не до первого символа '\0'
Вы правы, изменил поведение StringToCharArray, теперь на всю длину строки, а не до первого символа '\0'
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ошибки, баги, вопросы
A100, 2021.05.25 00:16
Результат: 4:0
Ожидалось: 0:0
Тогда только одна разница между StringToCharArray и StringToShortArray остается:
Сделал поведение одинаковым.
Дополнительно: в ближайшем будущем, массивы и строки дополнятся методами, например:
в ближайшем будущем, массивы и строки дополнятся методами
Все меньше и меньше общего с MQL4...