所以我一直在用按位字符串做一些工作,在我的旅行中,我需要以二进制形式显示这个 long long 。该变量具有正确的值,如第一个 cout 所示。但是,当它以二进制显示时,缺少“1”。任何想法是什么原因造成的?
#include <iostream>
#include <bitset>
using namespace std;
int main(){
long long truncator=4294967551ll;
cout<<truncator<<"\n";
std::bitset<64> b(truncator);
cout<<b;
return 0;
}
输出为:4294967551 00000000000000000000000011111111