Jean-Baptiste Queru | 4b29fe6 | 2009-11-12 18:46:23 -0800 | [diff] [blame^] | 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 | } |