今天遇到了一道题,要将一个二进制的字符串转化为十进制的数,再转化呈二进制。 首先二进制转化为十进制的方法(比较笨的方方) for(int i=31;i>=0;i--){ if(a[i]=='1'){ sum+=pow(2,31-i); } }//数据最多为2的31次方 接着为二进制转化为十进制,这里用到了位运算的方法,比如将n转化为二进制 for(int i=31;i>=0;i--){ if(n>>i&1){ cout<<1; } else{ cout<<0; } }