MathGroup Archive 1998

[Date Index] [Thread Index] [Author Index]

Search the Archive

Mathlink problem with lists of reals



Briefly
--------

Has anyone else had a problem passing a list of Reals from mathematica
to a c program?

Or am I making a real simple mistake?

I would be grateful for examples which  do something similar.

Thanks 
  Dave Grosvenor


In detail
----------

I have got mathlink to pass lists of reals from c to mathematica. But
now I want to   write the reals to a specified file.  This is so simple
I cannot beleive it is not working.


I define the following template 


:Begin:
:Function: writesample
:Pattern: WriteSample[filename_String, ns_RealList]
:Arguments: {filename, ns}
:ArgumentTypes: {String, RealList}
:ReturnType: Integer
:End:


This is called as follows:-


WriteSample["test.txt",{1.1,2.2}]

evaluating to 
WriteSample["test.txt",{1.1,2.2}]


The call never reaches my c function code, which is defined as follows:-



int main(int argc,char* argv[])
{
int result;

result = MLMain(argc,argv);

return result;
}


int writesample(char* filename,double px[],long nx) {
FILE* outp = fopen(filename,"wb");
long i;


for (i=0;i<nx;i++){
 fprintf(outp,"%e\n",px[i]);
}


fclose(outp);
}


I have put in assert(1!=1) at various points in the writesampletm.c file
which was generated from the template, and it seems to fail much
earlier...




  • Prev by Date: Re: Possible bug in FindRoot[] in Mathematica 3.0
  • Next by Date: elliptic cylinder scattering
  • Prev by thread: Re: Mathlink problem with lists of reals
  • Next by thread: Compiling