bitset set() function in C++ STL
bitset::set() is a built-in STL in C++ which sets the bit to a given value at a particular index. If no parameter is passed, it sets all bits to 1. If only a single parameter is passed, it sets the bit at that particular index to 1.
Syntax:
set(int index, bool val)
Parameter: The function accepts two parameters which are described below:
- index – this parameter specifies the position at which the bit has to be set. The parameter is an optional one.
- val – this parameter specifies a boolean value which has to bet set at the index. The parameter is an optional one.
If no parameter is passed, it sets all bits to 1. If only a single parameter is passed, it sets the bit at that index.
Return Value: The function does not return anything.
Below programs illustrates the bitset::set() function.
Program 1:
#include <bits/stdc++.h>
using namespace std;
int main()
{
bitset<4> b1(string( "1100" ));
bitset<6> b2(string( "100100" ));
cout << "Before applying set() function: "
<< b1 << endl;
b1.set();
cout << "After applying set() function: "
<< b1 << endl;
cout << "Before applying set() function: "
<< b2 << endl;
b2.set();
cout << "After applying set() function: "
<< b2 << endl;
return 0;
}
|
Output:
Before applying set() function: 1100
After applying set() function: 1111
Before applying set() function: 100100
After applying set() function: 111111
Program 2:
#include <bits/stdc++.h>
using namespace std;
int main()
{
bitset<4> b1(string( "1100" ));
bitset<6> b2(string( "100100" ));
cout << "Before applying set() function: "
<< b1 << endl;
b1.set(1);
cout << "After applying set(1) function: "
<< b1 << endl;
cout << "Before applying set() function: "
<< b2 << endl;
b2.set(2, 0);
b2.set(4, 1);
cout << "After applying set(2, 0) and"
<< " set(4, 1) function: " << b2 << endl;
return 0;
}
|
Output:
Before applying set() function: 1100
After applying set(1) function: 1110
Before applying set() function: 100100
After applying set(2, 0) and set(4, 1) function: 110000