간단한 프로그램을 만든다면, 솔직히 디버깅 모드로 몇번만 코드를 훓으면, 버그를 찾아내기는 어렵지 않다.
하지만 점점 더 프로그램이 커져 나갈 수록, 우리는 간단하다고 생각했던 부분의 치명적인 실수로 프로그램이 연산도중
죽어버리는 상황에 맞닥드리게 된다....
머.. 운이 좋아서 한번에 디버깅 모드로 찾아 갈 수도 있지만, 매번 그렇게 되리라는 보장은 없다...
그럴 때 만약 절때 계산에서 들어가지 말아야 할 조건이 있다면 쓸 수있는 assert() 함수를 이용해 보자...
기본적으로 assert() 함수는 디버그 모드에서 동작하는 디버깅용 함수라고 생각하면 되는데...
assert(a == 0 ) 처럼.. 뒤에 조건을 넣으면 된다...
assert를 사용하기 위해서는 #include <assert.h> 헤더를 추가하고 필요한 부분에서 사용하면 된다..
이 assert가 유용하게 쓰이는 경우가 바로 위의 예 처럼, 0이 절때 들어가서는 안되는 경우나 또 절때 2개의 값이 같을 수 없는
경우(배열의 크기는 10인데 10이 들어간다든지 하는..) 그럴때 유용하다.
assert의 조건문에 걸릴 경우 메세지 박스가 뜨며 어떤 파일, 몇번쨰 줄에서 떳는지 바로 기록해 주기 때문에..
유용하게 사용할 수 있다.
'프로그래밍 > 유용한 팁' 카테고리의 다른 글
CString을 숫자로 변환하기.. (0) | 2012.01.08 |
---|---|
if문 내부의 조건식의 순서를 바꿔쓰자! (1) | 2011.08.12 |
bool 변수 = 변수 ? false : true ; (0) | 2011.08.03 |
WM_KEYDOWN 과 WM_CHAR 의 차이 (0) | 2011.08.02 |
DirectShow 웹캠 화면 쉽게 입력받기. (0) | 2011.08.02 |