글
Chapter 16. 디버깅
책 정리/좋은 프로그래밍 습관
2009. 9. 4. 21:14
QuickWatch
QuickWatch 를 이용해서 Watch부분에 특정 변수의 값을 입력할 경우 그 변수의 값이 변하게 된다.
ASSERT() 와 VERIFY()
비주얼 C++ 개발 도구를 사용하는 경우 사용하는 디버깅 함수이다.
MFC응용프로그램 릴리즈 모드 에서는 ASSERT문이 주석처리가 된다.
따라서 함수 호출의 성공 여부를 확인하기 위해 ASSERT 사용
사용 중인 경우에는 VERIFY 사용
-
#define ASSERT(e) ((e) ? (void)0 : _assert(_FILE_, _LINE_, #e))
표현식 e가 참이면 0 실행, 거짓일 경우 화면에 파일 이름과 줄 번호를 출력
- char *buf;
- VERIFY( buf = (char*)calloc( 20, sizeof(char ) );
- strcpy( buf, "Hello World");
- free( buf );
일반적인 C프로그램에서는 assert() 함수를 사용한다.
-
#include <assert.h>
void PrintAge( int num )
{assert( num > 0 );
printf("My Age : %d", num );
}
num이 0과 같거나 작은 값이 들어오면 프로그램 실행을 중지하고 메시지를 출력한다.
Assertion failed : num > 0, file d:\test\test.c line 17
이 글은 스프링노트에서 작성되었습니다.
'책 정리 > 좋은 프로그래밍 습관' 카테고리의 다른 글
Chapter 15. 전처리기 (0) | 2009.09.04 |
---|---|
Chapter 14. 공용체 (0) | 2009.09.04 |
Chapter 13. 구조체 (0) | 2009.09.04 |
Chapter 12. 함수 포인터 (0) | 2009.09.04 |
Chapter 11. 포인터 (0) | 2009.09.04 |