Beim gegenseitigen Aufruf von Unterprogrammen und der damit verbundenen
Parameterübergabe muß beachtet werden, welche Datentypen der
einzelnen Sprachen einander entsprechen.
Dabei geht es nicht nur um die logische Entsprechung, sondern auch um die
physische: Die Werte sollen möglichst ohne zwischengeschaltete
Transformationen ausgetauscht werden können.
Die folgende Tabelle gibt die Entsprechungen für die XL-Compiler
für die Sprachen Pascal, Fortran und C an.
Quelle: AIX-Hilfesystem © IBM
| XL Pascal Data Types | XL FORTRAN Data Types | XL C Data Types |
|---|---|---|
| ARRAY | Dimensioned variable (transposed) | array pointer (*) to type (transposed) |
| BOOLEAN | - | - |
| CHAR | CHARACTER | char |
| Enumeration | - | enumeration |
| Functional Parameter | - | pointer (*) to function |
| GCHAR | - | wchar_t |
| GSTRING(n) | - | - |
| GSTRINPTR | - | - |
| INTEGER | INTEGER INTEGER*4 | signed int long int |
| PACKED -32768..32767 | INTEGER*2 | short signed int |
| PACKED 0..65535 | LOGICAL*2 | short unsigned int |
| PACKED -128..127 | INTEGER*1 | signed char |
| PACKED 0..255 | LOGICAL*1 | unsigned char |
| PACKED ARRAY[1..n] OF CHAR | CHARACTER*n | char array |
| POINTER | - | - |
| REAL | REAL*8 DOUBLE PRECISION | double |
| RECORD | - | struct |
| RECORD variant | - | - |
| - | - | union |
| SET | - | - |
| SHORTREAL | REAL REAL*4 | float |
| SPACE | - | - |
| STRING(n) | - | - |
| STRINGPTR | - | - |
| TEXT | - | - |