0

私は2つの同一のC++コードを持っており、それぞれが同一の.raw画像ファイルをそのまま読み込みます:

this->file_variable = fopen(filename, "r")

それらは、その中の情報を次のように処理します。

status = fread ((void *)this->img1,
  sizeof(float),
  (this->width * this->height),
  this->file_variable)
)

2 つのコードの唯一の違いは、異なるボックスでコンパイルされたことですが、img1 配列からはまったく異なる結果が得られます。これのデバッグを開始する方法さえまったくわかりません。誰かが私を正しい方向に向けてもらえますか?

編集: ファイルに関する情報を徐々に取得しています。それらは (幅 x 高さ) 1800 x 1728 ピクセル、1 チャネル、8 ビット深度です。

4

4 に答える 4

2

ファイルはバイナリ形式で書かれているように見えるので、同様に開く必要があります。

this->file_variable = fopen(filename, "rb")

「b」がないと、ASCIIとして読み取られます。

于 2013-04-05T00:17:41.467 に答える
0

値のバイナリ (!) 形式が異なるマシンで同じであるという保証はありません。他のthis->値はどこから来るのですか?

于 2013-04-04T23:11:00.460 に答える