You need to pass it as a vector and then you can convert to an array
structure in C. Look at carray.c for one way to do this, there are others.
Browse the source code and see how different authors handle your problem.
Matt Austin
Statistician
Amgen, Inc
800 9AMGEN9 x77431
805-447-7431
-----Original Message-----
From: r-help-bounces at stat.math.ethz.ch
[mailto:r-help-bounces at stat.math.ethz.ch]On Behalf Of johan Faux
Sent: Monday, March 20, 2006 1:13 PM
To: r-help
Subject: [R] How can I pass a R matrix as parameter to C code?
Hello,
Is it possible to pass R matrix as a parameter to an internal C procedure?
From the documentation I got the impression that only 1-dim vectors can be
passed.
Why the following wont work for me?
> a<-matrix(1:15,3,5)> .C("pr",as.integer(a))
void pr(int **a){
a[1][1]=100;
}
Thanks,
Johan
---------------------------------
[[alternative HTML version deleted]]
______________________________________________
R-help at stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide!
http://www.R-project.org/posting-guide.html