字符组合拆分
这里用 2863311530 四个字节举例,十六进为AAAA AAAA,二进制为1010 1010 1010 1010 1010 1010 1010 1010
那么单独拆分或者取出二进制某一位我们需要怎么做呢,
int number=2863311530;
取红色部分 number=number<<8>>24;补:00000000(1010 1010 1010 1010 1010 1010 00000000)黄色为右移动位。
去蓝色一位数 number=number<<4>>31;ok了。补:0000(1010 1010 1010 1010 1010 1010 1010 0000)黄色为右移动位。
short number1= 170, number2= 170,number3= 170 number4= 170;
宽字符组合 int number=(((number1<<24)|(number2<<16))|(number3<<8))|number4;(左移后都补0做位运算);
或者 char* str = (char*)calloc(4,sizeof(char));
str [0]=number1; str [1]=number2; str [2]=number3;str [3]=number4;
number=(int)str ;
赞 (0)