최대 1 분 소요

❄️ David Malan 교수의 모두를 위한 컴퓨터 과학(CS50 2019)을 바탕으로 정리한 내용입니다.


버그와 디버깅

버그(bug)는 코드에 들어있는 오류입니다.
버그로 인해 프로그램의 실행에 실패하거나 프로그래머가 원하는 대로 동작하지 않게 됩니다.

버그를 만들고 싶지 않겠지만 모든 프로그래머들은 버그와 마주하게 되어있습니다.
디버깅(debugging)은 코드에 있는 버그를 식별하고 고치는 과정입니다.
프로그래머는 디버거라고 불리는 프로그램을 사용하여 디버깅을 하게 됩니다.

디버깅의 기본

프로그램은 일반적으로 인간보다 훨씬 빠르게 연산을 수행합니다.
그래서 프로그램을 실행시켜보는 것만으로는 무엇이 잘못됐는지 찾아내기 어렵습니다.

디버거는 프로그램을 특정 행에서 멈출 수 있게 해주기 때문에 버그를 찾는데 도움이 됩니다.
프로그래머는 멈춰진 그 지점에서 무슨 일이 일어나는지 볼 수 있습니다.
프로그램이 멈추는 특정 지점을 중지점이라고 합니다.

또한 프로그래머가 프로그램을 한번에 한 행씩 실행할 수 있게 해줍니다.
이로써 프로그래머는 프로그램이 내리는 모든 결정들을 단계별로 따라갈 수 있게 됩니다.

논리적 오류 해결을 위한 디버깅

  1. printf()를 통해 의심되는 값 확인
  2. 중지점 생성 후 step over


💛 개인 공부 기록용 블로그입니다. 👻

맨 위로 이동하기

태그:

카테고리:

업데이트: