**Three floating-point types**

C++ supports at least three different floating point types:

**float**: (32 bits, 7 significant digits) ±3.4 E38**double**: (64 bits, 15 significant digits) ±1.7 E308**long double**: (80 bits, 19 significant digits) ±1.2 E4932

(Once again, the number of bits, the number of significant digits, and the range for each type was gleaned from http://www.cplusplus.com/doc/tutorial/tut1-2.html. Hopefully the character used above indicating plus or minus will survive the HTML publishing process.)

These three types differ primarily in terms of the range of values that they can support and the amount of memory required to store an instance of the type.

Values of any of the three types can be either positive or negative as indicated by the ± character.