Pascal file pointers to c – HP SunSoft Pascal 4.0 User Manual

Page 186

Advertising
background image

162

Pascal 4.0 User’s Guide

7

Pascal File Pointers to C++

You can pass a file pointer from Pascal to C++, then have C++ do the I/O. See
this example.

The C++ procedure,

UseFilePtr.cc

#include <stdio.h>

extern "C"

void UseFilePtr (FILE* ptr)

{

fprintf (ptr, "[1] \n");

fprintf (ptr, "[2] \n");

fprintf (ptr, "[3] \n");

}

The C++ main program,

UseFilePtrMain.p

program UseFilePtrMain (output);

var

f: text;

cfile: univ_ptr;

procedure UseFilePtr (cf: univ_ptr); external C;

begin

rewrite (f, 'myfile.data');

cfile := getfile (f);

UseFilePtr (cfile);

end.

The commands to compile and
execute

UseFilePtr.cc

and

UseFilePtrMain.p

hostname% CC -c UseFilePtr.cc

hostname% pc UseFilePtr.o UseFilePtrMain.p

hostname% a.out

[1]

[2]

[3]

Advertising