[질문]system() 함수 동작 문제

xlugi의 이미지


잘 동작하던 system() 함수가
메모리 할당 이후 문제가 생깁니다.

1) system() 함수 리턴값 0 으로 정상동작
2) int a[64][64]; system() 함수 정상동작
3) memset(a, 0, sizeof(a)); 으로 초기화 이후 system()함수가 -1를 리턴하면서 동작하지 않습니다.

변수 초기화 부분과 system()함수 구현부분과는 동작식 아무런 연관이 없는데 동작하질 않습니다.

메모리 양도 충분한데요..

무엇이 문제인지 조언 부탁드립니다.

ironboy의 이미지

스택 오버 플로우를 의심해 볼 수 있겠는데요..
이렇게 한번 테스트 해보세요.

int **a = new int[64][64];
memset(a, 0, 64*64*sizeof(int));
system(...);
delete a;

이렇게 해서 문제가 안생긴다면,
스택에, 너무 큰 메모리를 잡아서...
스택이 깨진게 아닌가 생각되네요.

gamdora의 이미지

int (*a)[64];가 돼야 할 듯 싶어요.