c_cpp 十进制二进制转换
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 十进制二进制转换相关的知识,希望对你有一定的参考价值。
#include<bits/stdc++.h>
using namespace std;
// #BitManipulation
long long BtoD1(string x){ // using pow(2,place)
long long dec=0;
int n=x.size();
for(int i=0;i<n;i++){
if(x[i]=='1'){
dec=dec|(1<<(n-1-i));
}
}
return dec;
}
string DtoB(long n){
string bin;
while(n>0){
bin.insert(bin.begin()+0,(n%2)+'0');
n/=2;
}
return bin;
}
long long BtoD2(string x){ // using bitwise operations
long long dec=0;
int n=x.size();
for(int i=0;i<n;i++){
if(x[i]-'0'){ // if==1
dec+=(x[i]-'0')<<(n-1-i);
}
}
return dec;
}
int main(){
cout<<BtoD1("11011110011")<<endl;
cout<<BtoD2("11011110011")<<endl;
cout<<DtoB(1779)<<endl;
return 0;
}
以上是关于c_cpp 十进制二进制转换的主要内容,如果未能解决你的问题,请参考以下文章
c_cpp C片段将十进制转换为二进制
c_cpp 将十进制转换为十六进制
c_cpp 转换为二进制表示的.cpp
c_cpp 108.将Sorted Array转换为二进制搜索树
c_cpp [十进制数转罗马数字]将一个十进制数字符串转换为罗马数字字符串#字符串处理
c_cpp Objective-C类将十六进制字符串转换为UIColor。支持#RGB#ARGB #RRGGBB #AARRGGBBUsage:[UIColor colorWithHexString: