假設我只有兩個正在設置的標誌(bCold和bHot)。我發現了所有可能的組合應該相等。那麼我怎麼才能確定下面的原始(或兼容)常量是什麼?根據按位或組合確定原始常量
When bCold and bHot are both turned ON = 0x4100
When bCold and bHot are both turned OFF = 0x8200
If bCold is ON and bHOT is OFF = 0x8100
If bCold is OFF and bHOT is ON = 0x4200
瞭解以上,我應該設置bCold和bHot等於什麼?
#define bCold ((ULONG)0x???)
#define bHot ((ULONG)0x???)
// Turn them on sometime later
long lCONFIG_FLAGS = bCold | bHOT;
你能把它寫成方程形式嗎? – Mysticial 2012-07-17 05:20:48
這看起來更像是一個數學問題,而不是一個編程問題。 – 2012-07-17 05:23:20
有沒有不斷的,你可以或以符合這些要求。例如,從bCold到off的轉換是從0x4200到0x4100的變化 - 這將刪除0x200位並將其添加到0x100位中。你將不得不在兩個操作中使用兩個不同的常量來做到這一點。 – cdhowie 2012-07-17 05:23:28