각 좌표에 임의로 1 또는 0이 할당 된 2 차원 배열을 만들려고합니다. 그것은 좌표에 도달 할 때까지 잘 작동합니다 [20] [3]. 그 다음에 "segmentation fault 11"이 나옵니다.루프에서 배열 요소에 액세스하려고하면 세그먼트 화 오류가 발생합니다. 이유는 무엇입니까?
나는 어떻게 또는 왜 그렇게 단서가 없다. 특히 예를 들어 200 * 200의 행렬을 만들 수 있기 때문에 특히 그렇지만 [200] [3] 좌표에서만 동일한 문제가 발생합니다. 따라서 오류가 발생한 마지막 x 좌표의 세 번째 y 좌표입니다.
#include <stdio.h>
#include <stdlib.h>
int main() {
int x, y, i, j ;
x = 20;
y = 20;
int grid [x][y];
for (i = 0; i <= x; i++) {
for (j = 0; j <= y; j++) {
grid[i][j] = rand() % 2 ;
printf("grid [%d][%d]: %d\n", i, j, grid[i][j]);
}
}
return 0;
}
오류가 있습니다. 귀하의 색인은 19에만 도달 할 수 있습니다 : for (i = 0; i
Alexi
@Alexi 저게 뭐죠? –