논리 오류

논리 오류(또는 논리적 오류)는 프로그램의 소스 코드에 있는 실수로 인해 잘못되거나 예상하지 못한 동작이 발생하는 것을 말합니다. 논리 오류는 단순히 잘못된 출력을 생성할 수도 있고, 실행 중인 프로그램이 중단되게 할 수도 있는 일종의 런타임 오류입니다.

프로그래밍 실수의 유형은 매우 다양하며, 이로 인해 논리 오류가 발생할 수 있습니다. 예를 들어 값을 잘못된 변수에 할당하면 일련의 예상하지 못한 프로그램 오류가 발생할 수 있습니다. 두 수를 더하는 대신 곱하면 원하지 않는 결과가 나올 수도 있습니다. 구문 오류를 발생시키지 않는 작은 오타도 논리 오류를 일으킬 수 있습니다. 아래의 PHP 코드 예제에서는 등호 하나(=)가 등호 두 개(==)여야 하므로 if 문에서 논리 오류가 발생할 수 있습니다.

잘못된 코드: if ($i=1) { ... }

올바른 코드: if ($i==1) { ... }

PHP에서 "=="는 "같다"는 뜻이고, "="는 "된다"는 뜻입니다. 따라서 잘못된 if 문은 변수 $i에 1을 할당하면 TRUE 값이 반환되므로 항상 TRUE를 반환합니다. 올바른 코드에서는 $i가 1과 같을 때만 if 문이 TRUE를 반환합니다. 그러나 잘못된 코드의 구문은 허용되므로 구문 오류가 발생하지 않고 코드가 성공적으로 컴파일됩니다. 논리 오류는 런타임 중에야 발견될 수 있습니다. 논리 오류는 소스 코드에 숨겨져 있는 경우가 많기 때문에 일반적으로 구문 오류보다 찾아내고 디버깅하기가 더 어렵습니다.

업데이트됨 April 27, 2012 작성: Per C.

quiz지식 테스트하기

Which of the following is NOT a compressed archive file extension?

A
.ZIP
0%
B
.RAR
0%
C
.BMP
0%
D
.7Z
0%
Correct! Incorrect!     View the Archive definition.
More Quizzes →

Tech Terms 컴퓨터 사전

이 페이지의 논리 오류에 대한 정의는 TechTerms.com의 저자가 작성한 원본 정의입니다. 이 페이지를 참조하거나 이 정의를 인용하려면 정의 바로 아래에 있는 녹색 인용 표시줄을 사용하세요.

저희의 목표는 컴퓨터 용어를 이해하기 쉬운 방식으로 설명하는 것입니다. 게시하는 모든 정의에서 정확성과 간결함을 추구합니다. 이 정의에 대한 피드백이 있거나 새로운 기술 용어를 제안하고 싶으시면 문의해 주세요.

Tech Terms 뉴스레터

매일 또는 매주 발행되는 뉴스레터로 기술 지식을 향상시키세요! 지금 구독하고 새로운 용어와 퀴즈를 이메일로 받아보세요.

무료 TechTerms 뉴스레터 구독하기

이메일을 얼마나 자주 받고 싶으신가요?

각 이메일에 포함된 링크를 통해 언제든지 구독을 취소하거나 수신 빈도를 변경할 수 있습니다. 질문이 있으신가요? 문의해 주세요.

참고: 뉴스레터는 영어로 발송됩니다.