forループを使用してファイルを2次元配列に読み込み、Cでデータを保存する場所を指示する方法を知っていますが、私が興味を持っているのは、これを行うためにfread()呼び出しを1回使用できるかどうかです。つまり、次のようなことができますか。
int A[5][5];
fread(&A, sizeof(int), 25, filePtr);
これを試してみるとセグフォルトが発生するので、今のところこれができるのではないかと思っています。
編集: わかりました、この方法で fread を使用することは、実際には私の問題ではないと思います。私の問題は、関数内から fread を呼び出す必要があり、A がその関数の外で定義されていることです。
func(int size, int ***A)
{
fread(*A, sizeof(int), size*size, filePtr);
}
main
{
int A[n][n];
func(n, &A);
}
したがって、私の問題は、 fread への呼び出しがまだ seg fault であり、関数プロトタイプにトリプル ポインターを使用する必要があることです。楽しみのために(* Aの代わりに)Aだけを試しましたが、それでも同じセグフォルトが発生しました。ポインターで何かを見落としているようです。