[C++ lab] 9. 디버깅 테크닉
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

[C++ lab] 9. 디버깅 테크닉

on

  • 1,005 views

 

Statistics

Views

Total Views
1,005
Views on SlideShare
962
Embed Views
43

Actions

Likes
1
Downloads
6
Comments
0

4 Embeds 43

http://www.heej.net 22
http://cafe.nhnnext.org 17
http://nigayo.com 3
http://www.nigayo.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

[C++ lab] 9. 디버깅 테크닉 Presentation Transcript

  • 1. 9. 디버깅 테크닉 박민근
  • 2. 프로그래밍이란.. 코딩 30%, 디버깅 70%로 구성되어 있다. 네가 단 세 줄의 코드를 짜더라도… 언젠가는 디버깅 할 날이 온다…
  • 3. 디버깅 테크닉 1. 2. 3. 4. 5. 6. 7. 브레이크 포인트 (중단점) 호출스택 확인 변수 값의 확인 (자동/조사식) 중단점 조건 중단점 적중 횟수 버퍼 오버플로우/언더런 Runtime Error
  • 4. 브레이크 포인트(중단점) 프로그램의 흐름을 일시 정지하여, 디버깅 상태가 된다. 가장 중요한 디버깅 테크닉 디버깅 모드(F5)로 프로그램을 실행시켜야 하는 이유 Shift – F5 디버깅 종료 F10 F11 - 한줄씩 실행 함수 내부 디버깅
  • 5. 호출 스택(Call Stack) 확인 프로그램이 멈춘 시점에서, 어디서 호출 되었는지를 확인 할 수 있 • 아래에서부터 위로 호출 된 순서 • 현재 위치가 어떤 순서로 호출되었는지 확인할 수 있다.
  • 6. 변수 값 확인 (자동) 현재 실행되고 있는 변수 값을 확인한다. 리턴값도 확인 가능 • 현재 변수들의 값을 알 수 있다. • 현재 변수의 메모리 주소를 알 수 있다 • 배열의 값, 구조체의 값등도 확인 가능
  • 7. 변수 값 확인 (조사식) 현재 실행되고 있는 순간의 원하는 변수값을 확인 가능 • 확인하기 원하는 변수값만 등록하여 확인 가능하다. • 실행되는 부분과 관련이 없는 변수 확인 • 관심있는 변수들만 확인할 때
  • 8. 중단점 조건 변수값을 비교하여, 조건이 맞을때 프로그램을 중단시킨
  • 9. 중단점 적중 횟수 중단점에 히트된 횟수를 체크하여, 중단 시킨다
  • 10. 버퍼 오버플로우/언더런 생성된 메모리 범위 이외에 값을 쓰는 버그 컴파일 체크가 되지 않기 때문에, 가장 위험한 버그 중 하
  • 11. Runtime Error 실행중에 처리되지 않는 다양한 상황에서 나오는 에러 컴파일 에러에서 잡지 못하기 때문에, 훨씬 위험 하다. 일명 “뻑났다"라는 것.
  • 12. Runtime Error 대표적인 상황 할당되지 않거나, 이미 해제된 메모리(포인터)의 사용
  • 13. 언제나 방어적 프로그래밍을 하는 습관을 가져야 한다!! 프로그램은 거짓말을 하지 않지만 프로그래머는 실수를 한다.