CHARACTERs in Fortran are just pointers of type char*, just like in C, and just like any other fortran array. There is no terminating null and the fortran functions get the length either from some argument or because they assume a given size (for instance in Lapack it is a one-character string what the function expects)<br>

<br><div class="gmail_quote">On Sat, Jun 5, 2010 at 12:45 PM, Tamas K Papp <span dir="ltr"><<a href="mailto:tkpapp@gmail.com">tkpapp@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

Hi,<br>
<br>
I am trying to call the FORTRAN routine ILAENV in LAPACK [1] from CL,<br>
using CFFI.  It has CHARACTER*(*) arguments, and I am not sure how to<br>
handle these.  I found a lot of conflicting information on the web,<br>
including examples which used C-style zero-terminated strings [2], and<br>
others which mention string length as an extra argument to the<br>
function.<br>
<br>
Any kind of guidance on how to do this would be appreciated.<br>
<br>
Thanks,<br>
<br>
Tamas<br>
<br>
[1] <a href="http://www.netlib.org/lapack/util/ilaenv.f" target="_blank">http://www.netlib.org/lapack/util/ilaenv.f</a><br>
[2] <a href="http://www.ualberta.ca/AICT/RESEARCH/LinuxClusters/doc/acml350/
ILAENV_002dILAENVSET.html" target="_blank">http://www.ualberta.ca/AICT/RESEARCH/LinuxClusters/doc/acml350/<br>
ILAENV_002dILAENVSET.html</a><br>
<br>
<br>
_______________________________________________<br>
cffi-devel mailing list<br>
<a href="mailto:cffi-devel@common-lisp.net">cffi-devel@common-lisp.net</a><br>
<a href="http://common-lisp.net/cgi-bin/mailman/listinfo/cffi-devel" target="_blank">http://common-lisp.net/cgi-bin/mailman/listinfo/cffi-devel</a><br>
</blockquote></div><br><br clear="all"><br>-- <br>Instituto de Física Fundamental, CSIC<br>c/ Serrano, 113b, Madrid 28006 (Spain) <br><a href="http://tream.dreamhosters.com">http://tream.dreamhosters.com</a><br>