| 1 | /* $Id: complex.c 292 2003-06-04 03:02:11Z bird $ | 
|---|
| 2 | * Complex numbers. | 
|---|
| 3 | * C99??? | 
|---|
| 4 | */ | 
|---|
| 5 |  | 
|---|
| 6 | #include <stdio.h> | 
|---|
| 7 | /* do we have complex.h? let's skip that for now and do the #define ourself. */ | 
|---|
| 8 | #define complex _Complex | 
|---|
| 9 |  | 
|---|
| 10 | typedef struct { int real,imag; }           FakeComplexInt; | 
|---|
| 11 | typedef struct { float real,imag; }         FakeComplexFloat; | 
|---|
| 12 | typedef struct { double real,imag; }        FakeComplexDouble; | 
|---|
| 13 | typedef struct { long double real,imag; }   FakeComplexLongDouble; | 
|---|
| 14 |  | 
|---|
| 15 | void main(void) | 
|---|
| 16 | { | 
|---|
| 17 | complex int             ComplexInt; | 
|---|
| 18 | complex float           ComplexFloat; | 
|---|
| 19 | complex double          ComplexDouble; | 
|---|
| 20 | complex long double     ComplexLongDouble; | 
|---|
| 21 |  | 
|---|
| 22 | printf("sizeof(complex int        ) = %2dbytes %3dbits\n", sizeof(ComplexInt       ), sizeof(ComplexInt       )*8); | 
|---|
| 23 | printf("sizeof(complex float      ) = %2dbytes %3dbits\n", sizeof(ComplexFloat     ), sizeof(ComplexFloat     )*8); | 
|---|
| 24 | printf("sizeof(complex double     ) = %2dbytes %3dbits\n", sizeof(ComplexDouble    ), sizeof(ComplexDouble    )*8); | 
|---|
| 25 | printf("sizeof(complex long double) = %2dbytes %3dbits\n", sizeof(ComplexLongDouble), sizeof(ComplexLongDouble)*8); | 
|---|
| 26 | printf("\nFake types:\n"); | 
|---|
| 27 | printf("sizeof(FakeComplexInt       ) = %2dbytes %3dbits\n", sizeof(FakeComplexInt       ), sizeof(FakeComplexInt       )*8); | 
|---|
| 28 | printf("sizeof(FakeComplexFloat     ) = %2dbytes %3dbits\n", sizeof(FakeComplexFloat     ), sizeof(FakeComplexFloat     )*8); | 
|---|
| 29 | printf("sizeof(FakeComplexDouble    ) = %2dbytes %3dbits\n", sizeof(FakeComplexDouble    ), sizeof(FakeComplexDouble    )*8); | 
|---|
| 30 | printf("sizeof(FakeComplexLongDouble) = %2dbytes %3dbits\n", sizeof(FakeComplexLongDouble), sizeof(FakeComplexLongDouble)*8); | 
|---|
| 31 | } | 
|---|