Hin-Tak & Tamas,
For example, see what I've done in
http://www.stat.purdue.edu/~btyner/postage_0.1-1.tar.gz
I am by no means a C guru but it works with my compiler. The relevant
lines are
(in postage.c:)
void postage(int *lambda, int *D, int *tau, int r[*tau][*D])
{
(in postage.R:)
r <-
Hi Ben,
Thanks for your answer. I looked at the status of VLA on the GCC
homepage and it appears to be "broken". [1] Do you think that the code
below still works? Or are you using a different compliler?
Thanks,
Tamas
[1] http://gcc.gnu.org/c99status.html
On Sun, Nov 19, 2006 at 09:55:17AM -
Tamas,
You could write convenience functions, but I have used the C99 mechanism
for variable length arrays with no problems calling from R. One thing
you have to keep in mind though is that (as far as I know) the
dimensions must be passed before the array reference. So for example,
r <- .C("fo
I am passing (numeric) arrays to a C function, called with .C. To the
best of my knowledge, I can do this in R by passing it as a vector
(with as.vector) to the .C call.
However, it would be useful to access the array as an array inside C,
ie not have to calculate how array indices (i,j,k) map to