C++bitset to_ulong()是怎么计算的

#include<iostream>
#include<bitset>
using namespace std;
void main()
{
bitset<4> bit(1110); 
cout<<bit.to_ulong()<<endl; 
bitset<5> ait(10001);
cout<<ait.to_ulong()<<endl;

}


结果为什么是6和17啊

把十进制1110转化为2进制,用计算器算得为10001010110取后面四位,即为6

同理,把十进制的10001转为2进制得10011100010001,取后面五位,即为17

你可能感兴趣的:(C++)