차례:
비디오: 투싼 ix 판금도색 - 실버 메탈릭 베이스, 하프 블렌딩 기법으로 블록 도장 2024
Perl 프로그램을 작성하는 과정에서 오타 또는 2 개를 입력하는 것은 드문 일이 아닙니다. 그러나 텍스트 입력 슬립 업 (text-entry slip-up)을 포함하는 프로그램을 실행하려고하면 Perl은 일반적으로 혼동을 느끼고 오류를보고함으로써 알려줍니다. 수년간의 프로그래밍 경험을 가진 사람들조차도 대부분의 사람들에게 자연스러운 반응은 오류 메시지가 나타나면 걱정하거나 분노를 느끼는 것입니다.
당황하지 마십시오. 숨을 깊게 쉬어 라. 천천히 심호흡하십시오. 진심으로, 당신이 긴장하고 괴롭다면 문제의 근원에 도달 할 수 없습니다. 몇 년 동안 프로그래밍을하든 관계없이 항상 작성한 코드에 오류가 있음을 알게됩니다.
메시지는 항상 돈이 아니지만 문제가있는 지점에 가깝게 가까이 올 수 있습니다.
Perl에는 수많은 오류 메시지가 있지만 모든 사람들이 공통적으로 오타를 만들었 기 때문에 일부는 분명히 다른 것보다 더 많이 나타납니다. 간단한 오류로 인해 쉽게 피할 수있는 오류가 발생합니다.
세미콜론을 잊어 버림
Perl에서 프로그래밍 할 때 나타나는 가장 일반적인 오류 메시지는
# syntax error, "open"
File 'counter1과 비슷한 것 같습니다. pl '; Line 10
# 컴파일 오류로 인해 실행이 중단되었습니다.
Open 문을 사용하는 Line 10을 보거나 들여다 볼 수 있습니다. 아무런 문제가 보이지 않습니다. 여기의 트릭은 open 문 앞에 오는 문을 검사하고 세미콜론으로 끝나는 지 확인하는 것입니다. (Perl은 세미콜론을 만나면 문장이 끝나는 것을 알고 있습니다.)이 경우 프로그램의 7 번째 줄 끝에 세미콜론이 누락되어 오류가 발생합니다.
따옴표 삭제
빠른 수정을 모르는 경우 다음과 같은 종류의 오류 메시지가 매우 실망 스러울 수 있습니다.
# 연산자가 예상되는 곳에서 맨 처음 발견 된 단어
#" (INFILE, $ TheFile) 또는 죽을 "The"
# (# line 7에서 시작하는 가출 다중 행 "string"
File 'counter1)이 될 수 있습니다. pl '; Line 10
이 오류는 세미콜론을 잊어 버리는 것과 유사합니다. 대신 실수로 생략 된 따옴표입니다:
$ TheFile = "sample. txt; 이 경우, Perl은 무엇이 잘못되었는지를 추측하는 훌륭한 작업을 수행하여 Line 7의 급격한 줄 바꿈 문자열이 문제이며 정확합니다.
괄호를 너무 많이 또는 너무 적게 입력
프로그램에서 여는 괄호와 닫는 괄호가 많은 경우 실수로 추가 괄호를 쉽게 옮길 수 있습니다. 그렇다면 Perl에서
# syntax error, near ") eq"
File 'counter1과 같은 메시지를 볼 수 있습니다. pl '; 줄 38
# 구문 오류, "}"
파일 'counter1 근처. pl '; Perl은 오류가 정확히 어디인지는 판별 할 수 없지만 첫 번째 추측에 실제로 맞습니다. 38 행에 여분의 오른쪽 괄호가 들어 있습니다:
if (substr ($ TheLine, $ CharPos, 1)) eq "")
Perl 프로그램에서 괄호가 너무 적 으면 발견하기 어려운 문제가 발생할 수 있습니다:
# 상수 항목을 암시 적으로 왼쪽 인수로 사용할 수 없음 ->, "1}"
파일 'counter1 근처. pl '; Line 39
# "$ CharPos"
File 'counter1 근처에서 연산자가 예상 한 곳에서 스칼라가 발견되었습니다. pl '; 줄 40
# (이전 줄에 세미콜론이 누락 되었습니까?)
# 구문 오류, "$ CharPos"
파일 'counter1 근처. pl '; Line 40
야프! 이 모든 것은 38 번째 행의 마지막 괄호가 없기 때문에 생성되었습니다:
if (substr ($ TheLine, $ CharPos, 1) eq ""
여기 입력 오류를 찾아내는 또 다른 좋은 교훈은 다음과 같습니다. 오류를 찾지 못하면 오류를 발견하지 못 했으므로 한 줄 또는 두 줄 위로 이동하여 문제가 더 일찍 시작되었는지 확인하십시오.
마지막 조언: 펄을 사용하여 간단한 오타를 찾으십시오. can)을 사용하고, 많은 프로그래밍 언어에 대해 말할 수있는 것보다 더 많은 도움을 줄 수 있음을 기억하십시오.