저는 학교에서 개념 그래프에 관한 프로그램을 작성하고 있는 학생입니다.
개념 그래프는 자연어 처리 부분이거든요...
개념 그래프 매칭 시스템을 작성했는데
실행시에 다른 부분에서는 에러가 나오지 않다가 의미 매칭에서 메모리를 access할 수 없다는 에러가 (제가 해석하기는) 나오거든요...
그래서 소스 부분에 들어가서 변수의 내용을 확인해보면 초기화가 안되고 이상한 값이 들어가는데
변수를 많이 선언해서 나오나해서 변수의 수를 억지로 줄여보고 그래도 안되길래 문자열 변수를 포인터 변수로 선언해서 실행시에 생성 해 봤는데도 똑같은 에러가 나옵니다.
그게 프로시져에서 프로시져를 호출하고 호출된 프로시제에서 또다른 프로시져를 호출하고 해서 메모리가 부족한것인지 궁금합니다.
혹시 알고 계시는 분이 있으시면 조언을 부탁합니다. 그리고 프로시져의 호출은 몇 번까지 가능한지 도 알고 싶습니다.
메모리 에러라는게 메모리가 부족하다는 에러가 아니라 Access violation에러가 아닌가
생각되네요... 에러가 나는 부분의 소스가 없어서 뭐라 말하긴 그렇지만 위의 에러가
났다면 그건 메모리 영역을 잘못 참조해서 나는 에러입니다. 객체를 생성하지 않고
사용하거나 할당받지 않은 메모리 영역을 건드릴때 일어나는 에러입니다. 이건 직접
디버깅하셔서 고치는것이 좋구요.. 함수 호출은 스택에 여유공간이 남아있는한 몇십/몇
백번이고 하셔도 상관이 없습니다.
^^ 항상 즐코하세요.
왕초보(ljm) wrote:
> 저는 학교에서 개념 그래프에 관한 프로그램을 작성하고 있는 학생입니다.
> 개념 그래프는 자연어 처리 부분이거든요...
>
> 개념 그래프 매칭 시스템을 작성했는데
>
> 실행시에 다른 부분에서는 에러가 나오지 않다가 의미 매칭에서 메모리를 access할 수 없다는 에러가 (제가 해석하기는) 나오거든요...
>
> 그래서 소스 부분에 들어가서 변수의 내용을 확인해보면 초기화가 안되고 이상한 값이 들어가는데
>
> 변수를 많이 선언해서 나오나해서 변수의 수를 억지로 줄여보고 그래도 안되길래 문자열 변수를 포인터 변수로 선언해서 실행시에 생성 해 봤는데도 똑같은 에러가 나옵니다.
>
> 그게 프로시져에서 프로시져를 호출하고 호출된 프로시제에서 또다른 프로시져를 호출하고 해서 메모리가 부족한것인지 궁금합니다.
>
> 혹시 알고 계시는 분이 있으시면 조언을 부탁합니다. 그리고 프로시져의 호출은 몇 번까지 가능한지 도 알고 싶습니다.
>
>