Home | History | Annotate | Download | only in data
      1 int ftoi(float f) {
      2     return f;
      3 }
      4 
      5 int dtoi(double d) {
      6     return d;
      7 }
      8 
      9 float itof(int i) {
     10     return i;
     11 }
     12 
     13 double itod(int i) {
     14     return i;
     15 }
     16 
     17 float f0, f1;
     18 double d0, d1;
     19 
     20 void testParseConsts() {
     21     printf("Constants: %g %g %g %g %g %g %g %g %g\n", 0e1, 0E1, 0.f, .01f,
     22           .01e0f, 1.0e-1, 1.0e1, 1.0e+1,
     23           .1f);
     24 }
     25 void testVars(float arg0, float arg1, double arg2, double arg3) {
     26     float local0, local1;
     27     double local2, local3;
     28     f0 = arg0;
     29     f1 = arg1;
     30     d0 = arg2;
     31     d1 = arg3;
     32     local0 = arg0;
     33     local1 = arg1;
     34     local2 = arg2;
     35     local3 = arg3;
     36     printf("globals: %g %g %g %g\n", f0, f1, d0, d1);
     37     printf("args: %g %g %g %g\n", arg0, arg1, arg2, arg3);
     38     printf("locals: %g %g %g %g\n", local0, local1, local2, local3);
     39 
     40 
     41     printf("cast rval: %g %g\n", * (float*) & f1, * (double*) & d1);
     42 
     43     * (float*) & f0 = 1.1f;
     44     * (double*) & d0 = 3.3;
     45     printf("cast lval: %g %g %g %g\n", f0, f1, d0, d1);
     46 }
     47 
     48 int main() {
     49     testParseConsts();
     50     printf("int: %d float: %g double: %g\n", 1, 2.2f, 3.3);
     51     printf(" ftoi(1.4f)=%d\n", ftoi(1.4f));
     52     printf(" dtoi(2.4)=%d\n", dtoi(2.4));
     53     printf(" itof(3)=%g\n", itof(3));
     54     printf(" itod(4)=%g\n", itod(4));
     55     testVars(1.0f, 2.0f, 3.0, 4.0);
     56     return 0;
     57 }
     58