1

我正在尝试std::bitset,在得到错误的结果一段时间后,我注意到结果的顺序相反。尝试在cppreference页面上搜索,但找不到任何来源,因此需要确认。这也应该是不同编译器的默认行为吗?

#include <iostream>
#include <bitset>
using namespace std;

int main() {
    bitset<7> bin('C');
    cout << bin << endl;
    for(int i = 0; i < 7; ++i){ cout << bin[i]; }
    return 0;
}

1000011

1100001

4

1 回答 1

2

从 C++ 标准:

在类对象bitset<N>和某个整数类型的值之间进行转换时,位位置 pos 对应于位值 1 << pos。两个或多个比特对应的整数值是它们的比特值之和。

于 2016-05-13T04:07:43.160 回答