[331] | 1 | #include <stdio.h>
|
---|
| 2 |
|
---|
| 3 | int main()
|
---|
| 4 | {
|
---|
| 5 | /* decimal floating constant */
|
---|
| 6 | float fa0 = .123f;
|
---|
| 7 | float fa1 = .123E12F;
|
---|
| 8 | float fa2 = .123e-12f;
|
---|
| 9 | float fa3 = .123e+12f;
|
---|
| 10 | printf("%f\n%f\n%f\n%f\n\n", fa0, fa1, fa2, fa3);
|
---|
| 11 |
|
---|
| 12 | float fb0 = 123.123f;
|
---|
| 13 | float fb1 = 123.123E12F;
|
---|
| 14 | float fb2 = 123.123e-12f;
|
---|
| 15 | float fb3 = 123.123e+12f;
|
---|
| 16 | printf("%f\n%f\n%f\n%f\n\n", fb0, fb1, fb2, fb3);
|
---|
| 17 |
|
---|
| 18 | float fc0 = 123.f;
|
---|
| 19 | float fc1 = 123.E12F;
|
---|
| 20 | float fc2 = 123.e-12f;
|
---|
| 21 | float fc3 = 123.e+12f;
|
---|
| 22 | printf("%f\n%f\n%f\n%f\n\n", fc0, fc1, fc2, fc3);
|
---|
| 23 |
|
---|
| 24 | float fd0 = 123E12F;
|
---|
| 25 | float fd1 = 123e-12f;
|
---|
| 26 | float fd2 = 123e+12f;
|
---|
| 27 | printf("%f\n%f\n%f\n\n", fd0, fd1, fd2);
|
---|
| 28 | printf("\n");
|
---|
| 29 |
|
---|
| 30 | /* hexadecimal floating constant */
|
---|
| 31 | double da0 = 0X.1ACP12;
|
---|
| 32 | double da1 = 0x.1acp-12;
|
---|
| 33 | double da2 = 0x.1acp+12;
|
---|
| 34 | printf("%f\n%f\n%f\n\n", da0, da1, da2);
|
---|
| 35 |
|
---|
| 36 | double db0 = 0X1AC.BDP12;
|
---|
| 37 | double db1 = 0x1ac.bdp-12;
|
---|
| 38 | double db2 = 0x1ac.dbp+12;
|
---|
| 39 | printf("%f\n%f\n%f\n\n", db0, db1, db2);
|
---|
| 40 |
|
---|
| 41 | double dc0 = 0X1AC.P12;
|
---|
| 42 | double dc1 = 0x1ac.p-12;
|
---|
| 43 | double dc2 = 0x1ac.p+12;
|
---|
| 44 | printf("%f\n%f\n%f\n\n", dc0, dc1, dc2);
|
---|
| 45 |
|
---|
| 46 | double dd0 = 0X1ACP12;
|
---|
| 47 | double dd1 = 0x1acp-12;
|
---|
| 48 | double dd2 = 0x1acp+12;
|
---|
| 49 | printf("%f\n%f\n%f\n\n", dd0, dd1, dd2);
|
---|
| 50 | printf("\n");
|
---|
| 51 |
|
---|
| 52 | #ifdef __TINYC__
|
---|
| 53 | /* TCC extension
|
---|
| 54 | binary floating constant */
|
---|
| 55 | long double la0 = 0B.110101100P12L;
|
---|
| 56 | long double la1 = 0b.110101100p-12l;
|
---|
| 57 | long double la2 = 0b.110101100p+12l;
|
---|
| 58 | printf("%Lf\n%Lf\n%Lf\n\n", la0, la1, la2);
|
---|
| 59 |
|
---|
| 60 | long double lb0 = 0B110101100.10111101P12L;
|
---|
| 61 | long double lb1 = 0b110101100.10111101p-12l;
|
---|
| 62 | long double lb2 = 0b110101100.10111101p+12l;
|
---|
| 63 | printf("%Lf\n%Lf\n%Lf\n\n", lb0, lb1, lb2);
|
---|
| 64 |
|
---|
| 65 | long double lc0 = 0B110101100.P12L;
|
---|
| 66 | long double lc1 = 0b110101100.p-12l;
|
---|
| 67 | long double lc2 = 0b110101100.p+12l;
|
---|
| 68 | printf("%Lf\n%Lf\n%Lf\n\n", lc0, lc1, lc2);
|
---|
| 69 |
|
---|
| 70 | long double ld0 = 0B110101100P12L;
|
---|
| 71 | long double ld1 = 0b110101100p-12l;
|
---|
| 72 | long double ld2 = 0b110101100p+12l;
|
---|
| 73 | printf("%Lf\n%Lf\n%Lf\n\n", ld0, ld1, ld2);
|
---|
| 74 | #endif
|
---|
| 75 |
|
---|
| 76 | return 0;
|
---|
| 77 | }
|
---|