標籤:
原文:重溫delphi之控制台程式:Hello World!
這二天用c#開發ActiveX時,發現不管怎麼弄,c#就是沒辦法產生ocx的純正activeX控制項,而且還要強迫使用者安裝巨大的.net framework(我只是想做一個簡單截屏功能的activeX整合到silverlight聊天室中),於是想起了曾經用過一年的delphi,雖然時過境遷,現在早以是.net的天下,但是不可否認,delphi仍是win32原生程式最佳的開發工具之一。
關於Delphi的文法學習,可以參見這個chm文檔,基本上一天就能看完
http://d.namipan.com/d/d026cf6a2a78de9569248d7579fc2adccb3f8e01e5ba5500
先來做一個ConsoleApplication(即dos視窗程序)
File-->New-->Other-->Console Application
代碼如下:
program Project1;
{$APPTYPE CONSOLE}
uses //相當於using 命名空間
SysUtils;
var //定義變數
i:Integer;
s:string;
_set:set of Char; //集合類型
const
Author:string =‘Jimmy‘;//常量字串
resourcestring
Author2 = ‘yjmyzz‘;//資源字串
//定義一個過程
procedure MyProc(msg:string) ;
begin
Writeln(‘MyProc is Called by:‘ + msg);
end;
//定義一個函數
function MyFunc(msg:string):string;
begin
result := ‘MyFunc is Called by ‘ + msg;
end;
//Main方法的開始
begin
WriteLn(‘Hello World‘);//輸出,相當於c#中的Console.Writeln("xxx")
Writeln(‘‘);
for i:=0 to 10 do //迴圈
begin
s:= ‘這是數字‘ + IntToStr(i) ;
Writeln(s);
end;
Writeln(‘--------------------------‘);
MyProc(‘jimmy‘); //調用過程
Writeln(MyFunc(‘Jimmy.Yang‘)); //調用函數
Writeln(‘--------------------------‘);
Writeln(Author); //輸出常量
Writeln(Author2); //輸出資源字串
Writeln(‘--------------------------‘);
Writeln(‘Integer:‘);
Writeln(SizeOf(Integer));
Writeln(High(Integer));
Writeln(Low(Integer));
Writeln(‘--------------------------‘);
Writeln(‘i=‘ + inttostr(i));
Dec(i); //i減1,相當於i:=i-1;
i:=i-1;
Writeln(‘i=‘ + inttostr(i));
Writeln(Odd(i));
Writeln(‘--------------------------‘);
Writeln(FormatDateTime(‘yyyy年mm月dd日 hh:nn:ss‘,Now));
Writeln(‘--------------------------‘);
i:= Integer(‘A‘);
Writeln(i);
Writeln(Ord(‘a‘));
Writeln(Chr(97));
Writeln(#10 + ‘按任意鍵退出...‘);
Readln; //等待鍵盤輸入
end.
重溫delphi之控制台程式:Hello World!