Los números reales se definen con “float” o “double”. La diferencia entre ambas es la precisión que ofrece su representación interna. Hay un número infinito de reales, pero se representan con un número finito de bits. A mayor número de bits, mayor número de reales se representan, y por tanto, mayor precisión. Los reales definidos con “double” tienen un tamaño doble a los definidos con “float”. Al igual que en el caso de los enteros, el tamaño de estas representaciones varía de una plataforma a otra.
Algunas plataformas ofrecen números reales con tamaño mayor al “double” que se definen como “long double”. Los tamaños típicos para los tipos “float”, “double” y “long double” son 4, 8 y 12 bytes respectivamente.