bitset::flip()是C++中的内置 STL,用于翻转位。如果未在函数中传递任何参数,则它将翻转所有位值,将零转换为一,并将一转换为零。如果传递了参数位置,则仅翻转该位置的位。

用法:

bitset_name.flip(int pos)

参数:该函数接受非强制性的参数pos。如果传递了参数pos,则仅翻转索引pos处的位(索引pos从右开始计算)。如果未传递任何参数,它将翻转所有位值,将零转换为1,并将1转换为零。

返回值:该函数根据是否传递的参数翻转所有位值,并返回该数字的新二进制表示形式。

以下示例程序旨在说明bitset::flip()函数。

程序1:

// CPP program to illustrate the

// bitset::flip() function

// when no parameter is passed

#include

using namespace std;

int main()

{

// Initialization of bitset

bitset<4> b1(string("1100"));

bitset<6> b2(string("010010"));

// Printing the bitset after flipping the bits

cout << b1 << " after applying flip() function returns "

<< b1.flip() << endl;

cout << b2 << " after applying flip() function returns "

<< b2.flip();

return 0;

}

输出:

0011 after applying flip() function returns 0011

101101 after applying flip() function returns 101101

程序2:

// CPP program to illustrate the

// bitset::flip() function

// when parameter is passed

#include

using namespace std;

int main()

{

// Initialization of bitset

bitset<4> b1(string("1100"));

bitset<7> b2(string("0100100"));

// Printing the bitset after flipping the bits

cout << b1 << " after applying flip(3) function returns "

<< b1.flip(3) << endl;

cout << b2 << " after applying flip(6) function returns "

<< b2.flip(6);

return 0;

}

输出:

0100 after applying flip(3) function returns 0100

1100100 after applying flip(6) function returns 1100100

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐