一個位運算頭文件,操作第幾位,可以使用變量
BIT.H
- char bits[9]= {0,1,2,4,8,16,32,64,128};
- //v,需要設置的字節,
- //b,要設置第幾位,從 第1 位開始
- #define BIT_SET(v,b) (v)|=bits[b]
- #define BIT_CLR(v,b) (v)&= ~bits[b]
- #define BIT_GET(v,b) (v)& bits[b]
- //ex.
- //char c=6,t;
- //BIT_SET(c,6); // c 的第6 位設置 1
- //BIT_CLR(c,2); //c 的第2位 清 0
- //t= BIT_GET(c,2); 讀取c的 第2 位//
復制代碼 |