質問: 0; i < position_num; i++) { fprintf(fo[i],"%d\n",array[dposition[i]]); } fclose (fi); } 以下、linuxでやった場合の出力を左、maxでやった場合の出力を右に並べて書きます。 104 104 100 100 74 22 83 83 60 60 0 0 106 106 79 33 167 167 182 182 180 0 188 188 ... ... 3,8,11番目が違う数字が出力されます。繰り返しますが、プログラムと入力ファイルは同じものです。 linuxでもmacでもターミナルでコンパイル、実行しています。 コンパイラのバージョンは、gccで検索したらなんだかたくさん出てきてしまって、どれが使っているコンパイラのバージョンなのかよくわかりませんでした。 ちなみに、macはintel系の方です。 ほか、アドバイスいただくにあたって、何か必要な情報があればご指摘ください。 ぜひよろしくおねがいします。
回答: バイナリファイルの実際の内容はどうなっているのでしょうか? macとlinuxで結果が異なるということよりも、どちらが間違っているのか、あるいは両方とも間違っているのか、どうなんでしょう。