-1

次のようなエラーが発生します:スレッドが停止しました..... 0x6でのアクセス違反:アドレス0x6の読み取り。しかし、私のコードにはそのようなアドレスがありません。

    #include<stdio.h>
    #include<conio.h>
    void main ()
    {
     int i,j,A[4][5],c=0;
     for(j=0;j<5;j++)
      for(i=0;j<4;i++)
       {
        A[i][j]=c;
        c++;
       }
     for(i=0;i<4;i++)
      {
       for(j=0;j<5;j++)
        printf("%d\t",A[i][j]);
       printf("\n");
      }
     getch();
    }

行ごとではなく列ごとに二重配列を入力するように求められました。メソッドを確認したいので、印刷しようとしましたが、うまくいきませんでした。

4

1 に答える 1

10
  for(i=0;j<4;i++)
          ^^

これはすべきではありません:

  for(i=0;i<4;i++)

j<4ループの内側に初めて入ると常にtrueになり、メモリアクセス違反の理由になります。

于 2013-01-26T18:23:35.993 に答える