- こちらでRの中でC++の関数を使えるようにしている
- そのやり方はわからないが、このときにCとRを使うことを考えていたのでもう少し改良
- CとRの間のファイルのやり取りをバイナリで行う
- Cでバイナリファイルの読み書き
- double型の変数が6個
- バイナリで書かれたtest.txtも出力される
# include <stdio.h>
# include <stdlib.h>
int main(void)
{
double x[]={0.0,1.0,2.0,3.0,4.0,5.0} , y[6];
FILE *fp;
fp = fopen("test.txt","w");
if(fp == NULL){
printf("ファイル操作中にエラー");
exit(1);
}
fwrite(x,sizeof(double),6,fp);
fclose(fp);
fp = fopen("test.txt","r");
if(fp == NULL){
printf("ファイル操作中にエラー");
exit(1);
}
fread(y,sizeof(double),6,fp);
fclose(fp);
printf("%lf",y[0]+y[1]+y[2]+y[3]+y[4]+y[5]);
return 0;
}
to.read = file("~/Desktop/read/test.txt","rb")
readBin(to.read,double(),n=6,endian = "little")
> to.read = file("~/Desktop/read/test.txt","rb")
> readBin(to.read,double(),n=6,endian = "little")
[1] 0 1 2 3 4 5