>> - операция побитового сдвига вправо. Эквивалентна делению на 2 без остатка. Таким образом, этот код:
lparam>>32
побитово сдвигает значение lparams вправо 32 раза или делит его на 2^32. Этим приемом получают старшие 32 бита lparams.
& - операция побитового И. Выполняет операцию И с соответствующими битами (нулевой с нулевым, первый с первым и т. д.) двух значений, т. е. если хотя бы в одном из битов 0, то результирующий бит будет 0. Таким образом, код:
if((flg_keys&0x0001)!=0)
проверяет нулевой бит flg_keys. Он должен быть установлен в 1. Иначе условие будет false.
Этим приемом проверяется значение каждого из нужных битов. Хотя в данном примере можно было не производить первичный сдвиг и напрямую проверить биты. Но тогда страдает наглядность кода.
>> - операция побитового сдвига вправо. Эквивалентна делению на 2 без остатка. Таким образом, этот код:
побитово сдвигает значение lparams вправо 32 раза или делит его на 2^32. Этим приемом получают старшие 32 бита lparams.
& - операция побитового И. Выполняет операцию И с соответствующими битами (нулевой с нулевым, первый с первым и т. д.) двух значений, т. е. если хотя бы в одном из битов 0, то результирующий бит будет 0. Таким образом, код:
проверяет нулевой бит flg_keys. Он должен быть установлен в 1. Иначе условие будет false.
Этим приемом проверяется значение каждого из нужных битов. Хотя в данном примере можно было не производить первичный сдвиг и напрямую проверить биты. Но тогда страдает наглядность кода.
Ого. Ничего себе. Спасибо за подробный ответ. Буду разбираться.

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Здравствуйте. Пытаюсь использовать код из справки в своем индикаторе.
Ниже вставлю полный фрагмент кода, который меня смутил и в котором не могу разобраться.
Меня смутила строка. Не понимаю, что такое ">>". Как эта штука ">>" называется и что она означает?
И дальше везде используется вот такая штука "&". Подскажите пожалуйста, что это? Не встречал этот оператор в выражениях типа "if". Как его правильно читать?
Подскажите пожалуйста, что это за звери такие? Благодарю за ответы!