본문 바로가기
프로그래밍 언어/C, C++의 기본적인 설명

[C/C++] 디버그, 신텍스 에러, 세만틱 에러

by UltraLowTemp-Physics 2022. 2. 19.
728x90

1. 디버그(Debug)

프로그램 상의 에러를 버그(Bug)라 부르며, 이러한 에러를 찾는 과정을 디버그(Debug)라 부른다. 

2. 에러의 종류: 신텍스 에러 vs 세만틱 에러 

1) 신텍스 에러 (Syntax error) 
  (a) C/C++언어의 규칙을 따르지 않을 때 발생 
  (b) 신텍스 에러를 발견/확인하는 방법? 
     - 컴파일을 하기 전 에러가 있는지 눈으로 확인 
     - 컴파일러*가 찾아낸 신텍스 에러를 조사 
     * 컴파일러를 통해서 에러의 종류와 위치를 함께 확인이 가능 

2) 세만틱 에러 (Semantic Error) 
  (a) C 언어의 규칙은 정확히 따랐지만, 사용자가 원하지 않은 결과를 초래한 경우 
  (b) 컴파일러는 세만틱 에러는 발견해주지 못하며, 전적으로 세만틱 에러를 찾는 건 프로그래머의 몫이다. 
    - 세만틱 에러를 찾아가는 방법 중 하나로 프로그램의 상태들을 printf()를 통해서 확인하는 것이다. 
    - 추가적으로, 세만틱 에러를 찾기 위해 Debugger를 실행시켜서 프로그램을 단계별로 실행하면서 찾아낼 수 있다. 
     
 

 

728x90

댓글