char data = 0x01; //須要比較的數據 char temp = 0x01; //若是是單字節爲 0x01 雙字節爲 0x0001 char lasttemp =0x00; for(int i = 0 ;i <4 ;i++) //判斷幾個字節就在這裏輸入幾 { lasttemp = data>>i;//先右移,而後與0x01 & 運算,若是爲1 則 結果爲1 ,第i位就是1了。 if(lasttemp&temp) { printf("第%d位,爲1。",i); //to do some. } }
根據位運算中的移位運算,而且與0x01 作&運算,就能得出哪一位是一或者是0.blog