C++11 で記述された次のコードを考えてみましょう。
#include <iostream>
#include <bitset>
#include <cstdint>
int main() {
std::uint64_t a = 0000000000000000000000000000000000000000000000001111111100000000;
std::bitset<64> b(a);
std::cout << b << std::endl;
return 0;
}
コードの出力は次のとおりです。
0000000000000000001001001001001001001001000000000000000000000000
a
この出力が値に対応しないのはなぜですか?