最近搞tcp需要按位传输,整了个工具方法查询二进制
/// length待打印长度
-(void)bytearrtostr:(Byte *)data length:(int)length
{
char char_1 = '1',char_0 = '0';
char *chars = malloc(length*8+1);
chars[length*8] = '\n';
for(int i=0;i<length;i++)
{
Byte bb = data[i];
for(int j=0;j<8;j++)
{
if(((bb>>j)&0x01) == 1)
{
chars[i*8+j] = char_1;
}else{
chars[i*8+j] = char_0;
}
}
char temp = 0;
temp = chars[i*8+0];chars[i*8+0] = chars[i*8+7];chars[i*8+7] = temp;
temp = chars[i*8+1];chars[i*8+1] = chars[i*8+6];chars[i*8+6] = temp;
temp = chars[i*8+2];chars[i*8+2] = chars[i*8+5];chars[i*8+5] = temp;
temp = chars[i*8+3];chars[i*8+3] = chars[i*8+4];chars[i*8+4] = temp;
}
NSString *string = [NSString stringWithCString:chars encoding:NSUTF8StringEncoding];
NSLog(@"binnary string = %@",string);
}
oc 打印二进制
最新推荐文章于 2023-03-27 09:44:21 发布