인덱스 값이 제대로 안들어 가는 경우가 있는거 같습니다. c++

godzilla35의 이미지

 
for(int i=0; i<L_SIZE; i++)
	{
		for(int j=0; j<L_SIZE; j++)
		{
			move(arr,i,j,flag,dir);
		}
	}

요런 식의 저 move 함수에서 i,j값이
void move(char** lattice,int i, int j, int** flag,stack<int> dir)
{
 
	if(lattice[i][j] == '*')
	{
		if(flag[i][j] == 0)
			temp++;
		flag[i][j]=1;

lattice 2차 배열에 인덱스로 들어가져야 하는데

i,j값이 예를 들어 0, 0 이 들어가야하는데 1,-1 이딴식으로 들어가는 경우가 생깁니다

잘 돌아갈때도 있는데 런타임 에러 뜰때가 있어서 멘탈 터지겠네요

왜그럴까요

ifree의 이미지

인덱스 탓이 아닌 것 같은데요.

저런 경우는 대체로 flag 배열의 정수 변수를 초기화하지 않았기 때문일 가능성이 높습니다.
C++에서는 정수 초기화가 지원되지 않으므로, 이 문제를 점검해 보세요.