본문 바로가기

공부/c언어

디버깅 종류

반응형

기본 디버깅

 - 브레이크 포인트와 디버그모드로 실행을 이용한 디버깅(F5, F9, F10, F11 등을 이용하는..)

   변수의 체크나, 코드의 흐름등을 확인 할 수 있음.


메모리 디버깅

 - 특정 변수에 대해 조사하고 싶을 때, 변수의 주소값을 취해, 해당 주소의 메모리가 변경될 때 중단점이 히트.

   변수가 바뀌는 부분을 알고 싶을 때 유용.


원격 디버깅

 - 원격지에서 실행되는 프로그램을 빌드한 소스를 이용해 원격지에서 디버깅 할 수 있는 방법

   원격지에서 실행되는 프로그램에 대해, 기본 디버깅처럼 수행 가능. 심볼 파일이 필요.


메모리 덤프

 - 윈도우가 뻗거나, 치명적이 오류가 발생했을 때 메모리의 상태를 파일로 기록해 놓을 수 있다.

   이 파일을 WinDbg라는 프로그램을 이용해 분석하여, 오류가 난 원인을 분석하고, 고칠 수 있다.

   이 외에도 WinDbg는 다른식으로도 사용할 수 있다.


로그

 - 프로그램 개발시 많이 쓰이며, 특히 게임의 서버에서 많이 쓰이는 방법으로,

   오류가 났을 때의 상황을 다시 재현하기 힘들기에 오류가 발생했을때 유저의 PC에 오류 정보에 대한 기록을 남기거나,

   서버쪽으로 전송해, 개발자가 분석하고 디버깅 할 수 있게 해줌.




디버깅시 전역 변수의 값이 변경되었을 때를 찾을 수 있는 방법

http://kin.naver.com/open100/detail.nhn?d1id=1&dirId=104&docId=1401708&qb=66mU66qo66asIOuUlOuyhOq5hQ==&enc=utf8&section=kin&rank=1&search_sort=0&spq=0&pid=RCgQ1F5Y7tCsss9unnNsssssstR-222393&sid=UkTer3JvLDMAADKrGAw


중단점에 조건, 적중횟수

http://www.cyworld.com/jhlovv/355741

 

디버깅확인창에 문자열 출력

OutputDebugString(L"123\n");

반응형