[VS] Stack around the variable '변수명' was corrupted
Programming/VisualStudio2017. 1. 20. 10:30
반응형
Stack around the variable '변수명' was corrupted 원인과 해결법
안녕하세요~
얼마 전 회사에서 Stack around the variable '변수명' was corrupted 디버그 에러를 뱉어내면서
해당 프로그램이 멈추는 버그가 나왔습니다.
무언가 찾아봤더니 해당 변수명이 만약 배열이거나 한정된 자원을 선언했을 때
그것보다 더 큰 메모리를 넣거나 접근할 때 문제가 된 것이였습니다.
아래는 문제 될 수 있는 코드 예제입니다.
char test10[10];
char test17[17];
strncpy(test10, test17, sizeof(test17));
// 1번째 인자값에 넣은 배열은 10을 잡아놨는데 17만큼 복사
이런 식으로 사이즈가 맞지 않은 배열끼리 메모리를 복사할 때 나오기도 합니다.
문제는 안 나올 때도 있긴한데 그래도 위와 같은 코드는 안 쓰는게 좋을 듯합니다.
반응형
'Programming > VisualStudio' 카테고리의 다른 글
[디버깅] 진단 도구의 스냅숏으로 메모리 할당 알아보기 (0) | 2019.04.30 |
---|---|
[VS] error MSB3073 고치는 방법 (0) | 2017.12.15 |
[SVN] AnkhSVN 비쥬얼스튜디오에 적용하기 (0) | 2017.07.06 |
[VS] error LNK2038: '_MSC_VER'에 대해 불일치가 검색되었습니다. (0) | 2016.11.01 |
[VS] LNK1123: COFF 비주얼 스튜디오 빌드 에러 (0) | 2016.10.20 |
댓글()