C ++ STL中的bitset :: flip()

位集flip()方法是C ++ STL(标准模板库)的内置方法。它翻转调用位集的位。此方法将所有0都翻转为1,将所有1翻转为0,这意味着在不传递任何参数的情况下,它将调用位集的每一位都反转。

如果传递了参数,则flip方法将仅翻转传递的整数n的第n位。例如,如果传递了5,则flip方法将翻转调用位集的第5位。

语法

bitset_name.flip(int pos)

示例

Initial bitset: 011001

应用无参数的位翻转功能后:100110

在使用6的Beta函数之后:011000

示例

#include <bits/stdc++.h>
using namespace std;
int main() {
   bitset<6> bit1(string("100110"));
   bitset<10> bit2(string("0100001111"));
   cout << bit1 << " after applying flip() function with nothing passed as parameter returns "
   << bit1.flip() << endl;
   cout << bit2 << " after applying flip() function with 7 passed as parameter returns "
   << bit2.flip(7);
   return 0;
}

输出结果

100110 after applying flip() function with nothing passed as parameter returns 011001
0100001111 after applying flip() function with 7 passed as parameter returns 0110001111