2

テキスト ファイルを読み取り、そのデータを 2 次元配列に入れたいと考えています。このコードは、0 1 1 1 0 1 1 0 1 1 1 1 のような小さなテキスト ファイルでは機能しますが、大きなテキスト ファイルと 648x512 配列ではセグメンテーション エラーが発生します。何が問題なのですか?これを行うためのより良いコードは何でしょうか?

大きな txt ファイルへのリンク:

http://mimoza.marmara.edu.tr/~omer.korcak/courses/CSE246%20-%20Spring2012/squares.txt

#include<stdio.h>

FILE *input;
int x=0, y=0, R=0, C=0,c=0;

int main()
{
    input = fopen("squares.txt", "r");
    C = 512;
    R = 648;
    int M[R][C];

    for(x = 0; x < R; ++x ) {
        for(y = 0; y < C; ++y ) {

            fscanf( input, "%d", &c );
            M[x][y]=c;

        }
    }
}
4

2 に答える 2