source: EcnlProtoTool/trunk/tcc-0.9.27/tests/tests2/70_floating_point_literals.c@ 331

Last change on this file since 331 was 331, checked in by coas-nagasima, 6 years ago

prototoolに関連するプロジェクトをnewlibからmuslを使うよう変更・更新
ntshellをnewlibの下位の実装から、muslのsyscallの実装に変更・更新
以下のOSSをアップデート
・mruby-1.3.0
・musl-1.1.18
・onigmo-6.1.3
・tcc-0.9.27
以下のOSSを追加
・openssl-1.1.0e
・curl-7.57.0
・zlib-1.2.11
以下のmrbgemsを追加
・iij/mruby-digest
・iij/mruby-env
・iij/mruby-errno
・iij/mruby-iijson
・iij/mruby-ipaddr
・iij/mruby-mock
・iij/mruby-require
・iij/mruby-tls-openssl

  • Property svn:eol-style set to native
  • Property svn:mime-type set to text/x-csrc
File size: 2.0 KB
Line 
1#include <stdio.h>
2
3int 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}
Note: See TracBrowser for help on using the repository browser.