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 に対応します。2 つ以上のビットに対応する整数値は、それらのビット値の合計です。

于 2016-05-13T04:07:43.160 に答える