fork(1) download
  1. #include <iostream>
  2. #include <iomanip>
  3. #include <bitset>
  4. #include <limits>
  5.  
  6. void flipBits(unsigned long value) {
  7. std::bitset<std::numeric_limits<unsigned long>::digits> bits(value);
  8. std::cout << "Original value : 0x" << std::hex << value;
  9.  
  10. value = bits.flip().to_ulong();
  11. std::cout << ", Value after flip: 0x" << std::hex << value << std::endl;
  12. }
  13.  
  14. int main() {
  15. flipBits(0x12345678);
  16. flipBits(0x11223344);
  17. flipBits(0xabcdef12);
  18. flipBits(15);
  19. flipBits(0xffffffff);
  20. flipBits(0x0);
  21. return 0;
  22. }
  23.  
Success #stdin #stdout 0s 3340KB
stdin
Standard input is empty
stdout
Original value : 0x12345678, Value after flip: 0xedcba987
Original value : 0x11223344, Value after flip: 0xeeddccbb
Original value : 0xabcdef12, Value after flip: 0x543210ed
Original value : 0xf, Value after flip: 0xfffffff0
Original value : 0xffffffff, Value after flip: 0x0
Original value : 0x0, Value after flip: 0xffffffff