Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
а можно как-то сразу в функции сложить эти элементы чтоб получить время в виде мс прошедших с начала дня (мс + сек*1000 + мин*60*1000 + часы*60*60*1000), вместо того чтоб распределять структуру в массив?
1000 х (количество секунд с начала дня) + (количество миллисекунд из последней ячейки) = (количество миллисекунд с начала дня)
Что означает "(количество миллисекунд из последней ячейки)" ?
Совсем парня запутаете...
;)
насколько я понимаю в твоём коде операции с элементами массива
1000 х (количество секунд с начала дня) + (количество миллисекунд) = (количество миллисекунд с начала дня)
насколько я понимаю в твоём коде операции с элементами массива
да - просто раскидываю из массива из 4х 32битных ячеек 16битные значения в восемь элементов массива.
Дальше их можно использовать.
32бит - int в MQL. Типа данных на 16 бит нет. Потому и вынуждены работать так.
это я и сам ранее написал, вопрос был в том как получить эти количества не распределяя в массив
Про это выше написал. Нет такого типа в MQL4, чтобы хранить такое число.
В Windows оно имеет тип DWORD64 == unsigned __int64 .
Но это число представлено структурой из двух DWORD. Младшее можно взять и как-то там препарировать. Всё равно, надо будет возиться с массивом и побитовым смещением.
Хотя, тоже не выйдет. В MQL4 нет типа DWORD.
и ещё интересно возможны выражения типа х = (х >> 16) + y;
понятно что можно просто изменить for на (i=2;i<4;i++), а лучше на (i=4;i<8;i+=2) и в блоке заменить i*2 на i,
но интересует можно ли ограничиться 2мя ячейками массива "a", ведь вся структура не нужна
Что означает "(количество миллисекунд из последней ячейки)" ?
Совсем парня запутаете...
;)
хотя вроде можно и без массива, но не уверен что возможны выражения типа х = (х >> 16) + y; или возможны?