numeric_limits<char>::digits = 7 ?

Gabriel Dos Reis Gabriel.Dos-Reis@cmla.ens-cachan.fr
Thu May 3 07:46:00 GMT 2001


"R. Sinoradzki" <sinoradz@student.uni-kl.de> writes:

| Hi,
| 
| I want to use a bitset to store a double.
| 
| So I tried bitset< numeric_limits<char>::digits * sizeof(double) >.
| 
| Then I noticed, that numeric_limits<char>::digits is set to 7.
| This is different from CHAR_BIT = 8 in <climits>.
| What is the reason to use different values?

For T = builtin-type, numeric_limits<T>::digits the number of non-sign
bits in the representation.  See 18.2.1.2/7.

For example std::numeric_limits<unsigned char>::digits is 8.

-- Gaby



More information about the Libstdc++ mailing list