一、字符转化成二进制
#include
#include using namespace std;int main()
{bitset<8> bits = bitset<8>('a');bitset<1> tmp;for(int i=0;i<4;i++){tmp[0] = bits[i];bits[i] = bits[7-i];bits[7-i] = tmp[0];}for(int i=0;i<8;i++)cout<<bits[i];}
二、字符串转化成二进制字符串
#include
#include
#include
#include
using namespace std;
string StrToBitStr(string str)
{bitset<64> bstr ;for(int i=0;i<8;i++){bitset<8> bits = bitset<8>(str[i]);cout<<str[i]<<endl;for(int j = 0;j<8;j++){bstr[i*8+j] = bits[7-j];}}string s = bstr.to_string();reverse(begin(s),end(s));return s;
}int main()
{string bstr = StrToBitStr("generate");cout<<bstr<<endl;
}
三、二进制字符串转化成字符串
#include
#include
#include
#include
using namespace std;
string StrToBitStr(string str)
{bitset<64> bstr ;for(int i=0;i<8;i++){bitset<8> bits = bitset<8>(str[i]);cout<<str[i]<<endl;for(int j = 0;j<8;j++){bstr[i*8+j] = bits[7-j];}}string s = bstr.to_string();reverse(begin(s),end(s));return s;
}
string BitStrToStr(string bstr)
{string str="";int sum;for(int i=0;i<bstr.size();i+=8){sum=0;for(int j=0;j<8;j++)if(bstr[i+j] == '1')sum = sum*2+1;elsesum = sum*2;str =str+char(sum);}return str;}
int main()
{string bstr = StrToBitStr("generate");cout<<bstr<<endl;cout<<BitStrToStr(bstr)<<endl;
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!