7

Pascal File Pointers to C++

The C++ procedure,

UseFilePtr.cc

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

#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

The commands to compile and execute UseFilePtr.cc and 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.

hostname% CC -c UseFilePtr.cc

hostname% pc UseFilePtr.o UseFilePtrMain.p hostname% a.out

[1]

[2]

[3]

162

Pascal 4.0 User’s Guide

Page 186
Image 186
HP SunSoft Pascal 4.0 manual Pascal File Pointers to C++, C++ procedure, 162