Condividi tramite


Costanti C a virgola mobile

Una costante a virgola mobile è un numero decimale che rappresenta un numero reale con segno. La rappresentazione di un numero reale con segno include una parte intera, una parte frazionaria e un esponente. Usare costanti a virgola mobile per rappresentare valori a virgola mobile che non possono essere modificati.

Sintassi

floating-point-constant:
fractional-constantexponent-partopt opt opt floating-suffix
digit-sequenceexponent-part floating-suffixoptare

fractional-constant:
digit-sequencescegliere . digit-sequence
digit-sequence .

exponent-part:
e signopt digit-sequence
E signopt digit-sequence

sign: uno tra
+ -

digit-sequence:
digit
digit-sequence digit

floating-suffix: uno tra
f l F L

È possibile omettere le cifre prima del punto decimale (parte del valore intero) o le cifre dopo il punto decimale (la parte frazionaria), ma non entrambe. È possibile escludere il separatore decimale solo se si include un esponente. Non possono essere presenti spazi vuoti tra le cifre o i caratteri della costante.

Gli esempi seguenti illustrano alcune forme delle espressioni e delle costanti a virgola mobile:

15.75
1.575E1   /* = 15.75   */
1575e-2   /* = 15.75   */
-2.5e-3   /* = -0.0025 */
25E-4     /* =  0.0025 */

Le costanti a virgola mobile sono positive a meno che non siano precedute da un segno meno (-). In questo caso, il segno di sottrazione viene considerato come operatore di negazione unario aritmetico. Le costanti a virgola mobile sono di tipo float, double o long double.

Una costante a virgola mobile senza un fsuffisso , Fl, o L ha tipo double. Se la lettera f o F è il suffisso , la costante ha tipo float. Se è suffisso dalla lettera l o L, ha il tipo long double. Ad esempio:

10.0L  /* Has type long double  */
10.0   /* Has type double       */
10.0F  /* Has type float        */

Il compilatore Microsoft C rappresenta long double internamente lo stesso tipo di double. Tuttavia, i tipi sono distinti. Vedere Archiviazione dei tipi di base per informazioni sul tipo double, floate long double.

È possibile omettere la parte intera della costante a virgola mobile, come illustrato negli esempi seguenti. Il numero 0,75 può essere espresso in molti modi, inclusi gli esempi seguenti:

.0075e2
0.075e1
.075e1
75e-2

Vedi anche

Costanti C