socket通信服務器需要給待發送的數據加個頭,這樣客戶端只有確認了頭才能開始解析包,項目中出了問題,就是加了一個char作爲頭,但是發送與接收這個char內容不符,想辦法數據這個八位的char,看看是哪裏出了問題
unsigned char a;
int r[8];
r[0] = a & 0x01; // 最低道位專屬
r[1] = ( a & 0x02) >> 1;
r[2] = ( a & 0x04) >> 2;
r[3] = ( a & 0x08) >> 3;
r[4] = ( a & 0x10) >> 4;
r[5] = ( a & 0x20) >> 5;
r[6] = ( a & 0x40) >> 6;
r[7] = ( a & 0x80) >> 7; // 最高位
for(int i = 0; i < 8; ++i){
printf(" %d:",r[i]);
}
這樣就可以輸出這個char的每一位大小了