Linux上でTextファイルにして転送すればこのような問題は生じませんが、実行時間の関係からBinaryにせざるを得ません。
異なるCPU同士でBinaryファイルのやり取りをすると1:1にはならないという記述をネット上で見たことがあります。
LinuxマシンのCPUはPowerpc、OSはDebian Tinyセットです。
long data[3];
int i = 0;
if ((fp = fopen("/var/tmp/file.bin", "wb")) == NULL){
printf("file.bin Open Error);
exit(0);
}
while(1){
data[0] = i;
data[1] = 0x123;
data[2] = 0xabc;
i++;
fwrite(data, sizeof(long), 3, fp);
}
どうも10が区切りになっているようでもあるのですが定かではありません。それから00 0dというコードもある?ようです。
Binaryファイルの書込みはfwrite以外はないそうですが、回避策があればお教えください。