2011/12/19 09:03

오브젝트 파스칼 특징

1. 대소문자를 구별하지 않는다.

2. 문자열은 ‘’ 작은 따옴표로 묶는다.

3. 변수 선언은 함수가 시작하는 begin 이전에 키워드 var를 쓰고 선언한다.

4. indent Style 은 통상 2로 사용한다.

5. 리턴 유/무에 따라 함수/프로시저로 구분한다.

 

주로 쓰이는 변수타입

Integer -  4바이트 정수

String – 문자열, 문자를 사용할 때도 쓴다.

 

주로 쓰이는 비교 연산자

and, or. =, <>, >, <, >=, <=

 

 

// (Input, Output) 생략가능
program ProgramName(Input, Output); 

// 콘솔 프로젝트 명시, 없으면 윈도우 프로젝트
{APPTYPE CONSOLE}

// 참조할 다른 파일들
// 폴더를 명시적으로 지정 가능
uses
  UnitFileName, UnitFileName.
  UnitFileName in 'FilePath';

// 전처리기 - 델파이에서 윈도우 프로젝트로 개발할 때 참조할 리소스 파일
{$R *.res}

// 조건부 전처리기 
{$DEFINE A}

{$IFDEF A}
{$ENDIF}

{$IFNDEF A}
{$ENDIF}

// 함수 선언 및 정의 구현 ( 리턴값이 있는 함수 )
// Calling Convention은 생략가능( 생략시 stdcall )
// 매개변수 이름 앞에 var 키워드를 선언하면 레퍼런스 변수가 된다.
function FuncName( argv1: Type, var argv2 ... ): ReturnType; Calling Convention;
// 함수 내에서 사용할 변수 선언
var
  VariableName: Type;
  VariableName: Type;
begin

// 리턴값 설정
// 바로 리턴이 되지는 않는다.
FuncName := ReturnValue;

// 함수 종료
Exit;

// 프로시저 선언 및 정의 구현 ( 리턴값이 없는 함수 )
// Calling Convention은 생략가능( 생략시 stdcall )
// 매개변수 이름 앞에 var 키워드를 선언하면 레퍼런스 변수가 된다.
procedure ProcName( argv1: Type, var argv2 ... ); Calling Convention;
// 프로시저  내에서 사용할 변수 선언
var
  VariableName: Type;
  VariableName: Type;
begin

// 함수 종료
Exit;

end;

// EOF를 제외하고 모든 end 뒤에는 ; 를 붙인다.
end;

// 전역 변수 선언
// 배열 선언 0과 10은 다른 인덱스로 대체 가능( 왜 이런걸 지원하는진 알수없음)
var
  VariableName: Type;
  VariableName = array[0..10] of Type;

// program으로 시작하는 소스코드의 begin은 엔트리 포인트이다.
begin


// for 문
// 10이 포함되며 총 11번 실행한다.
for i := 0 to 10 do
begin
  WriteLn( IntToStr( i ) );
end;

for I := 10 downTo 0 do
  WriteLn( IntToStr( i ) );

// 배열 순회 방법
// 인덱스가 항상 0부터 시작하지 않기 떄문에 Low() 와 High() 같은 함수를 지원한다.
for for i := Low( ArrayVariablename ) to high( ArrayVariablename ) do
  WriteLn( IntToStr( i ) );


// if문
if 'A' = 'A' then
begin
  WriteLn( 'True' );
end
else
begin
  WriteLn( 'False' );
end;

// begin end 로 감싸지 않으면 ; 를 표시하지 않는다.
if ( 'A' = 'A' ) and ( 'A' <> 'B' )
  WriteLn( 'True' )
else
  WriteLn( 'False' );


// switch case 문
// break 가 따로 없다.
case 'A' of
'A': WriteLn( 'A' );
'B': WriteLn( 'B' );
'C': WriteLn( 'C' );
end;

// EOF( end. 은 파일의 끝에만 쓰인다 )
end.

 

 

 

Posted by 유종원 tornare86