Whatever it is you are trying to do, it is the wrong thing to do in at least two ways.
Hmm... unless you just want to see the bits of the number.
A bitset doesn't directly support what you are trying to do, but you can certainly do it a number of ways. The basic premise of all of them is to first convert to a string, modify the string (insert spaces), and then print the string.
Without any fanciness:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
std::string add_spaces( const std::bitset <sizeof(float)*CHAR_BIT> & bits, std::size_t n )
{
std::string result;
std::string bitstring = bits.to_string();
std::size_t ni = bitstring.size();
std::size_t si = bitstring.size();
while (si--)
{
result += bitstring[ si ];
if ((--ni % n) == 0)
result += ' ';
}
return result;
}