char 转换到二进制以字符串形式显示 如 char d=65; 显示为A 转换后成字符串 01000001
inline string change(char c)
{
string data;
for(int i=0;i<8;i++)
{
// data+=c&(0x01<<i);
if ( ( c >>(i-1) ) & 0x01 == 1 )
{
data+="1";
}
else
{
data+="0";
}
}
for(int a=1;a<5;a++)
{
char x=data[a];
data[a]=data[8-a];
data[8-a]=x;
}
return data;
}
代码百度搜寻的,对位运算不是十分熟悉
二进制字符串转化为char 01000001转换为A
inline string change1(string data)
{
string result;
char c='\0';
for(int i=0;i<8;i++)
{
if(data[i]=='1') c=(c<<1)|1;
else c=c<<1;
}
// cout<<c;
result+=(unsigned char)c;
return result;
}