Delphi [델파이 문법] 문법 요소 #1

2012.09.17 19:03

관리자 조회 수:7702

델파이 문자 셋

델파이 언어는 유니코드(Unicode) 문자셋(character set)을 사용하며, 여기에는 유니코드
문자들과 영숫자 및 밑줄이 포함됩니다. 대/소문자는 구분하지 않습니다. 스페이스 문자와
ASCII 제어 문자들(리턴 혹은 개행 문자인 ASCII 13을 포함, ASCII 0부터 31까지)은 공백
(blank)이라고 부릅니다.

RAD 스튜디오 컴파일러는 파일에 BOM(byte order mark) 헤더가 있을 경우 UCS-2 혹은
UCS-4 인코딩된 파일을 허용합니다. 하지만 UTF-8 이외의 포맷을 사용할 경우 컴파일 속
도가 느려질 수 있습니다. UCS-4로 인코딩된 소스 파일의 모든 문자들은 UCS-2에서 서로
게이트 페어(surrogate pair) 없이 표현 가능해야 합니다. 서로게이트 페어를 가진 UCS-2
인코딩(GB18030 포함)은 codepage 컴파일러 옵션이 지정된 경우에만 허용됩니다.

기본 문법 요소들은 토큰이라고 불리며, 조합되어 표현식, 선언 및 문장을 구성합니다. 문장
은 프로그램 내에서 실행될 수 있는 알고리즘 동작을 기술합니다. 표현식은 문장에서 나타나
는 문법 단위로서 값을 나타냅니다. 선언은 표현식과 문장에서 사용할 수 있는 식별자(함수
나 변수의 이름 등)를정의하고, 적절한 경우 식별자를 위한 메모리를 할당합니다.


기본적인 문법

가장 단순하게 보자면, 프로그램은 구분자(separator)로 단락지어지는 연속된 토큰들입니
다. 토큰은 프로그램에서 의미를 가진 텍스트의 최소 단위입니다. 구분자는 공백이거나 주석
(comment)입니다. 엄밀히 말하면, 반드시 두 토큰 사이에 구분자를 두어야 하는 것은 아닙
니다. 예를 들어 다음의 코드는,

1.png

완벽하게 문법에 맞습니다. 하지만, 관례에 따르고 가독성을 높이기 위해 다음과 같이 코드
를 작성하시기 바랍니다.

2.png

토큰은 특수 기호(symbol), 식별자, 예약어, 지시어, 숫자, 레이블, 문자열로 분류됩니다. 구
분자는 토큰이 문자열인 경우에만 토큰의 일부가 될 수 있습니다. 인접한 식별자, 예약어, 숫
자, 레이블 사이에는 하나 이상의 구분자가 있어야 합니다.


특수 기호

특수 기호는 문자나 숫자, 혹은 이들의 쌍이 아닌 문자들로서 고정된 의미를 가진 문자들입
니다. 다음 단일 문자들은 특수 기호입니다.

# $ & ‘ ( ) * + , - . / : ; < = > @ [ ] ^ { }

다음 문자 쌍들도 역시 특수 기호입니다.

(* (. *) .) .. // := <= >= <>

다음의 표는 같은 의미를 가진 기호들을 나열합니다.

3.png

왼쪽 대괄호 [는 왼쪽 괄호와 마침표의 쌍 (.과 같은 의미입니다.
오른쪽 대괄호]는 마침표와 오른쪽 괄호의 쌍.)과 같은 의미입니다.
왼쪽 중괄호 {는 왼쪽 괄호와 별표 (*와 같은 의미입니다.
오른쪽 중괄호 }는 별표와 오른쪽 괄호 *)와 같은 의미입니다.


식별자

식별자(identifier)는 상수, 변수, 필드, 타입, 속성, 프로시저, 함수, 프로그램, 유닛, 라이브러
리, 패키지를 표시합니다. 식별자의 길이는 아무런 제한이 없지만 처음 255개의 문자만 의미
를 가집니다. 식별자는 문자나 밑줄(_)로 시작해야 하고 공백을 포함할 수 없습니다. 첫 번째
문자 뒤에는 문자, 숫자 및 밑줄이 올 수 있습니다. 예약어는 식별자로 사용될 수 없습니다.
델파이 언어에서는 대소문자를 구분하지 않으므로 CalculateValue와 같은 식별자는 다음
중 어떤 방식으로도 쓸 수 있습니다.

4.png

유닛 이름은 파일 이름과 같기 때문에 대소문자가 일치하지 않으면 경우에 따라 컴파일에 문
제를일으킬수도있습니다. 더자세히알아보려면, “유닛참조와uses 절”을 참고하십시오.

번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 22591
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 21024
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 23082
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 28881
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 30050
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 25397
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 46348
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 182316
143 HTML5 Builder로 시작하는 Hello World 모바일 클라이언트 앱 생성하기 (한글 번역) 관리자 2012.09.20 7004
» [델파이 문법] 문법 요소 #1 file 관리자 2012.09.17 7702
141 [XE3] VCL 이나 FireMonkey 폼을 Metropolis UI로 컨버팅하는 1분 동영상 관리자 2012.09.12 6937
140 [델파이 문법] 프로그램과 유닛 #4 file 관리자 2012.09.12 6438
139 [델파이 문법] 프로그램과 유닛 #3 file 관리자 2012.09.10 7532
138 20120906 RAD Studio XE3 월드투어-서울 세미나 발표자료입니다. [1] file 관리자 2012.09.07 5818
137 [델파이 문법] 프로그램과 유닛 #2 file 관리자 2012.09.06 8386
136 [델파이 문법] 프로그램과 유닛 #1 file 관리자 2012.09.03 9113
135 [델파이 문법] 프로시저와 함수 #12 file 관리자 2012.08.30 5679
134 [델파이 문법] 프로시저와 함수 #11 file 관리자 2012.08.27 5375
133 [델파이 문법] 프로시저와 함수 #10 file 관리자 2012.08.23 7043
132 [델파이 문법] 프로시저와 함수 #9 file 관리자 2012.08.20 6947
131 [델파이 문법] 프로시저와 함수 #8 file 관리자 2012.08.16 5582
130 [델파이 문법] 프로시저와 함수 #7 file 관리자 2012.08.13 6192
129 [동영상 강의] 델파이 기본 교육_21.트랜잭션처리 관리자 2012.08.10 6809
128 [델파이 문법] 프로시저와 함수 #6 file 관리자 2012.08.09 5550
127 PA(Platform Assistant) Server를 활용한 Windows 응용 프로그램 원격 디버깅 file 관리자 2012.08.09 5597
126 [동영상 강의] 델파이 기본 교육_20.스토어드 프로시저 관리자 2012.08.07 6354
125 [동영상 강의] 델파이 기본 교육_19.예외(Exception)처리 관리자 2012.08.06 6567
124 [델파이 문법] 프로시저와 함수 #5 file 관리자 2012.08.06 5568