이런건 처음 겪는데요


환경은 win7+VS2010 , 언어는 c++ 입니다


주변에 어떤 요소도 간섭하지 않고 (다중스레드 같은것도 아니고)


딱, 아주 기본적인 이 코드 입니다


int a = 5;


for(int i = a/2-1; i >= 0 ; i--)

function(i);


그런데 저 함수내에서 배열의 인덱스로 i 인자를 받아 쓰거든요


여기서 자꾸 excess violation 런타임 오류가 나서 디버그 모드를 돌려봤더니


a 는 5라고 제대로 들어가있는데


i 값이 196066 ... 이 들어가 있는겁니다. 대체 이유를 모르겠습니다. 이런것 처음 겪네요;


왜 이런걸까요. 뭔가 놓치고 있는것이 있는지 참;


제가 알기로는 for문 내에서 선언된 변수값은 외부로부터 blind 인데 말이죠(지역변수처럼)


아래는 디버그 모드 돌려본 결과 스샷입니다.



qs.png