Conformant arrays – HP SunSoft Pascal 4.0 User Manual

Page 125

Advertising
background image

The C–Pascal Interface

101

6

Conformant Arrays

For single-dimension conformant arrays, pass upper and lower bounds, placed
after the declared parameter list. If the array is multidimensional, pass
element widths as well, one element width for each dimension, except the last
one.

See this example:

One bounds pair may apply to several arrays if they are declared in the same
parameter group:

With multidimensional arrays, for all dimensions but the last one, pass the low
bound, high bound, and element width.

The commands to compile and
execute

UniVec.p

and

UniVecMain.c

with

-calign

hostname% pc -c -calign UniVec.p

hostname% cc UniVec.o UniVecMain.c -lpc

hostname% a.out

24

function ip(var x: array [lb..ub: integer] of real): real;

extern double ip(double [], int, int);

...

double v1[10];

double z;

z = ip(v1, 0, 9);

...

function ip(var x,y:array[lb..ub:integer] of real):real;

...

double v1[10], v2[10] ;

extern double ip() ;

double z ;

z = ip ( v1, v2, 0, 9 ) ;

...

Advertising