Constantes de ponto flutuante C
Uma "constante de ponto flutuante" é um número decimal que representa um número real assinado. A representação de um número real assinado inclui uma parte inteira, uma parte fracionária e um expoente. Use as constantes de ponto flutuante para representar os valores de ponto flutuante que não podem ser alterados.
Sintaxe
floating-point-constant:
fractional-constant exponent-part opt floating-suffix optdigit-sequence exponent-part floating-suffix opt
fractional-constant:
digit-sequence opt . digit-sequencedigit-sequence .
exponent-part:
e sign opt digit-sequenceE sign opt digit-sequence
sign : one of
+ –digit-sequence:
digitdigit-sequence digit
floating-suffix : one of
f l F L
Você pode omitir os dígitos anteriores ao ponto decimal (a parte inteira do valor) ou posteriores (a parte fracionária), mas não ambos. Você pode retirar o ponto decimal apenas se incluir um expoente. Nenhum caractere de espaço em branco pode separar os dígitos ou caracteres da constante.
Os exemplos a seguir ilustram alguns formatos de constantes de ponto flutuante e expressões:
15.75
1.575E1 /* = 15.75 */
1575e-2 /* = 15.75 */
-2.5e-3 /* = -0.0025 */
25E-4 /* = 0.0025 */
As constantes de ponto flutuante são positivas a menos que sejam precedidas por um sinal de subtração (–). Nesse caso, o sinal de subtração é tratado como um operador aritmético unário de negação. As constantes de ponto flutuante têm o tipo float, double ou long double.
Uma constante de ponto flutuante sem f, F, l ou sufixo L tem o tipo double. Se a letra f ou F for o sufixo, a constante tem o tipo float. Se o sufixo for a letra l ou L, tem o tipo long double. Por exemplo:
100L /* Has type long double */
100F /* Has type float */
Observe que o compilador C da Microsoft mapeia o tipo long double para double. Consulte Armazenamento de tipos básicos para obter mais informações sobre os tipos double, float e long.
Você pode omitir a parte inteira da constante de ponto flutuante, como mostrado nos seguintes exemplos. O número .75 pode ser expressado de várias maneiras, incluindo:
.0075e2
0.075e1
.075e1
75e-2