구문 오류
Syntax error컴퓨터 과학에서 구문 오류는 특정 프로그래밍 언어로 작성되도록 의도된 일련의 문자 또는 토큰 구문 오류입니다.
컴파일된 언어의 경우 컴파일 시 구문 오류가 검출됩니다.모든 구문 오류가 수정될 때까지 프로그램은 컴파일되지 않습니다.그러나 인터프리터 언어의 경우 프로그램 실행 중에 구문 오류가 검출될 수 있으며 인터프리터의 오류 메시지로 인해 구문 오류가 다른 종류의 오류와 구별되지 않을 수 있습니다.
정확히 어떤 오류가 "구문 오류"인지에 대해서는 약간의 이견이 있다.예를 들어, Java 코드에서 초기화되지 않은 변수 값을 사용하는 것은 구문 오류라고 말하는 사람도 있지만, 다른 많은 사람들은 동의하지[1][2] 않고 이를 (정적) 의미 오류로 분류합니다.
BASIC 인터프리터를 프라이머리 사용자 인터페이스로 사용한8비트 가정용 컴퓨터에서는 구문 오류 메시지는 인터프리터가 해석할 수 없는 명령 또는 사용자 입력에 대한 응답이었기 때문에 다소 악명이 높아졌습니다.계산기에 비활성 방정식이 입력되면 구문 오류가 발생하거나 발생할 수 있습니다.예를 들어 괄호를 닫지 않고 열거나 소수점 여러 개를 하나의 숫자에 입력함으로써 발생할 수 있습니다.
Java 에서는 구문적으로 올바른 스테이트먼트를 다음에 나타냅니다.
시스템..나가..인쇄('헬로 월드');
단, 다음과 같은 경우는 없습니다.
System.out.println(Hello World);
두 번째 예는 이론적으로 변수를 인쇄합니다.Hello World
'Hello World'라는 말 대신 'Hello World'라는 말 대신.그러나 Java의 변수는 공백으로 둘 수 없으므로 구문적으로 올바른 행은 다음과 같습니다.System.out.println(Hello_World)
.
컴파일러는 언어 문법의 요건을 충족하지 않는 소스 코드를 지정하면 구문 오류를 플래그화합니다.
유형 오류(Java에서 ++ 증분 연산자를 부울 변수에 적용하려는 시도 등) 및 선언되지 않은 변수 오류는 컴파일 시 검출되면 구문 오류로 간주될 수 있습니다.단,[2][3][4] 이러한 에러는 (스태틱) 시멘틱에러와 같이 분류하는 것이 일반적입니다.
계산기의 구문 오류
구문 오류는 계산기(과학 계산기 및 그래프 계산기에서 가장 일반적으로 볼 수 있는)의 여러 유형의 오류 중 하나로, 입력된 방정식에 숫자, 연산 등의 구문이 잘못되었음을 나타냅니다.여기에는 다음과 같은 다양한 방법이 포함됩니다.
- 닫힘 괄호가 없는 열린 괄호(방정식의 맨 끝에 닫힘 괄호가 없는 경우 제외)
- 대부분의 과학 계산기에서 구별되는 음수 기호 대신 음수 기호를 사용합니다(또는 그 반대).일부 과학 계산기는 음의 기호를 나타내는 마이너스 부호를 허용하지만, 그 반대는 덜 일반적입니다.
「 」를 참조해 주세요.
레퍼런스
- ^ 구문 또는 의미론 문제?
- ^ a b Java에서의 시멘틱오류
- ^ Aho, Alfred V.; Monica S. Lam; Ravi Sethi; Jeffrey D. Ullman (2007). Compilers: Principles, Techniques, and Tools (2nd ed.). Addison Wesley. ISBN 978-0-321-48681-3. 섹션 4.1.3: 구문 오류 처리, 페이지 194–195.
- ^ Louden, Kenneth C. (1997). Compiler Construction: Principles and Practice. Brooks/Cole. ISBN 981-243-694-4. 연습 1.3, 페이지 27-28.