The following code example is taken from the book
 
  C++20 - The Complete Guide
 by Nicolai M. Josuttis,
 Leanpub, 2021 
 
 The code is licensed under a
 
     Creative Commons Attribution 4.0 International License.
      
 
 
// raw code
 
#include <iostream> 
#include <format> 
#include <bitset> 
#include <bit> 
 
int main() 
{ 
  std::uint8_t i8 = 0b0000'1101;  
  std::cout 
    << std::format("{0:08b} {0:3}\n", i8)                 // 00001101  
    << std::format("{0:08b} {0:3}\n", std::rotl(i8, 2))   // 00110100  
    << std::format("{0:08b} {0:3}\n", std::rotr(i8, 1))   // 10000110  
    << std::format("{0:08b} {0:3}\n", std::rotr(i8, -1))  // 00011010  
    << std::format("{}\n", std::countl_zero(i8))          // four leading zeros  
    << std::format("{}\n", std::countr_one(i8))           // one trailing one  
    << std::format("{}\n", std::popcount(i8))             // three ones  
    << std::format("{}\n", std::has_single_bit(i8))       // false  
    << std::format("{0:08b} {0:3}\n", std::bit_floor(i8)) // 00001000  
    << std::format("{0:08b} {0:3}\n", std::bit_ceil(i8))  // 00010000  
    << std::format("{}\n", std::bit_width(i8));           // 4  
}