العوامل على مستوى البت والعلامات
تعمل & و| و^ و~ و<< و>> على قيم Integer بحجم 64 بت بدلالات لغة C، ولا تعمل على أي شيء آخر.
تُستخدم أساسًا لدمج ثوابت العلامات، واختبار البتات في القيم التي تُرجعها الدوال المضمَّنة، وتفكيك الألوان.
| المهمة | التعبير |
|---|---|
| دمج العلامات | FileNotify.FileName | FileNotify.LastWrite |
| اختبار علامة | (mask & FileNotify.Size) != 0 |
| تعيين علامة | mask = mask | flag; |
| مسح علامة | mask = mask & ~flag; |
| تبديل علامة | mask = mask ^ flag; |
| اختبار البت n | ((value >> n) & 1) == 1 أو (value & (1 << n)) != 0 |
| زوجي / فردي | (n & 1) == 0 |
تفكيك 0xRRGGBB | r = (c >> 16) & 0xFF; g = (c >> 8) & 0xFF; b = c & 0xFF; |
مفتاح مضغوط باستمرار (من KeyboardGetKeyState) | (state & 0x8000) != 0. البت الأعلى في SHORT الخاص بـ Win32 ممتد الإشارة، لذا يعمل state < 0 أيضًا. |
| مفتاح مبدَّل (Caps Lock وما شابه) | (state & 1) != 0 |
تُرجع DisplayGetPixelColorFromPoint القيمة 0xRRGGBB محزومة في Integer، أو -1 عندما لا تكون النقطة
على أي شاشة.