bitset::flip() en C++ STL

bitset::flip() es un STL integrado en C++ que voltea los bits. Si no se pasa ningún parámetro en la función, entonces cambia todos los valores de bit convirtiendo ceros en unos y unos en ceros. Si se pasa una posición de parámetro, voltea el bit solo en la posición.

Sintaxis:

bitset_name.flip(int pos)

Parámetro: La función acepta un parámetro pos que no es obligatorio. Si se pasa un parámetro pos, cambia el bit solo en el índice pos (el índice pos se calcula comenzando desde la derecha). En caso de que no se pase ningún parámetro, invierte todos los valores de bit convirtiendo ceros en unos y unos en ceros.

Valor devuelto: la función cambia todos los valores de bit según el parámetro pasado o no y devuelve la nueva representación binaria del número.

Los siguientes programas ilustran la función bitset::flip().

Programa 1:

// CPP program to illustrate the
// bitset::flip() function
// when no parameter is passed
#include <bits/stdc++.h>
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 ";
    cout << b1.flip() << endl;
  
    cout << b2 << " after applying flip() function returns ";
    cout << b2.flip();
  
    return 0;
}
Producción:

0011 after applying flip() function returns 1100
101101 after applying flip() function returns 010010

Programa 2:

// CPP program to illustrate the
// bitset::flip() function
// when parameter is passed
  
#include <bits/stdc++.h>
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 ";
    cout << b1.flip(3) << endl;
  
    cout << b2 << " after applying flip(6) function returns ";
    cout << b2.flip(6);
  
    return 0;
}
Producción:

0100 after applying flip(3) function returns 1100
1100100 after applying flip(6) function returns 0100100

Publicación traducida automáticamente

Artículo escrito por gopaldave y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *