原文:重温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!的更多相关文章

  1. 我写的第一个DELPHI的控制台程序,留作纪念。

    program Project2; {$APPTYPE CONSOLE} uses  SysUtils; const s = 'hello' ;  var a , b , c : integer; f ...

  2. 再谈Delphi关机消息拦截 -- 之控制台程序 SetConsoleCtrlHandler(控制台使用回调函数拦截,比较有意思)

    这里补充一下第一篇文章中提到的拦截关机消息 Delphi消息拦截:http://blog.csdn.net/cwpoint/archive/2011/04/05/6302314.aspx 下面我再介绍 ...

  3. C\C++控制台程序隐藏方法总结

    学习计算机,往往先从Windows环境下学习编程,学习编程,往往从C学起,学习C,往往又从控制台程序学习,何为控制台,就是那个黑框白字的界面.对于这样一个最初认为奇陋无比而现在认为无所不能的编程平台, ...

  4. VC++中的C运行时库浅析(控制台程序默认使用单线程的静态链接库,而MFC中的CFile类已暗藏了多线程)

    1.概论 运行时库是程序在运行时所需要的库文件,通常运行时库是以LIB或DLL形式提供的.C运行时库诞生于20世纪70年代,当时的程序世界还很单纯,应用程序都是单线程的,多任务或多线程机制在此时还属于 ...

  5. 在.NET Core控制台程序中使用依赖注入

    之前都是在ASP.NET Core中使用依赖注入(Dependency Injection),昨天遇到一个场景需要在.NET Core控制台程序中使用依赖注入,由于对.NET Core中的依赖注入机制 ...

  6. 使用 CommandLineApplication 类创建专业的控制台程序

    闲话 在很久很久以前,电脑是命令行/终端/控制台的天下,那屏幕上的光标在行云流水般的键盘敲击下欢快地飞跃着,那一行行的字符输出唰唰唰地滚动着--直到 Windows 95 的出现(那时候我还不知道苹果 ...

  7. C#基础-关于用json给控制台程序传值的坑

    上周遇到了一个非常诡异的坑,首先写了两个程序,第一个程序输出成dll,第二个程序是控制台程序. 在第一个程序里,我使用了process去启动第二个程序,同时传入了一个Json作为参数,即: Proce ...

  8. 你们信不信一句Console.WriteLine就能让你的控制台程序失去响应

    好久没更新博客了,今天是扒衣见君节,难得闲下来就来说说一个最近有趣的发现吧. 首先废话不多说,直接上代码吧 class Program { static void Main(string[] args ...

  9. zw.delphi不同版本程序运行速度测试

    { zw.delphi不同版本程序运行速度测试 delphi无论是开发,编译,还是运行,速度方面向来不差,笔者很少进行这种微粒度的优化,调试. 最近,因为项目需要,发现:同一个函数模块,差不多同样的代 ...

随机推荐

  1. 进阶:案例五: Dynamic 创建 Business Graphic

    效果图: step: 无需节点无需UI 1.添加属性 2.代码: method WDDOMODIFYVIEW . DATA:lr_graph TYPE REF TO cl_wd_business_gr ...

  2. Servlet的学习之Request请求对象(3)

    本篇接上一篇,将Servlet中的HttpServletRequest对象获取RequestDispatcher对象后能进行的[转发]forward功能和[包含]include功能介绍完. 首先来看R ...

  3. appium 真机测试问题 出现 instruments crashed on startup

    1.appium 真机测试的时候 instruments crashed on startup,必须在真机上打开UI Automation 在设置里: Developer->Enable UI ...

  4. Windows server 2008 R2实现多用户远程连接

    原文 Windows server 2008 R2实现多用户远程连接 经常使用远程桌面的朋友可能会注意到,Windows server 2008 R2中,远程桌面最多只允许两个人远程连接,第三个人就无 ...

  5. 基于visual Studio2013解决面试题之0401非递归遍历二叉树

     题目

  6. 基于visual Studio2013解决面试题之0308Fibonacci数列

     题目

  7. spring mvc 接受多对象的处置

    spring mvc 接受多对象的处理 spring mvc感觉非常好用,尤其是对接收对象參数的自己主动绑定非常简便,但对于同一时候传多个对象时有些困扰. 同一时候项目并没有直接使用spring的fo ...

  8. HttpWeb服务器之--用OO方式写

    虽然写的不是很好,但 最终解释权以及版权归13东倍所有! package com.web; import java.io.IOException; public class Test { public ...

  9. flashcache中应用device mapper机制

    Device Mapper(DM)是Linux 2.6全面引入的块设备新构架,通过DM可以灵活地管理系统中所有的真实或虚拟的块设备. DM以块设备的形式注册到Linux内核中,凡是挂载(或者说“映射” ...

  10. Delphi面向对象设计的经验原则(61条)

    (1)所有数据都应该隐藏在所在的类的内部. (2)类的使用者必须依赖类的共有接口,但类不能依赖它的使用者. (3)尽量减少类的协议中的消息. (4)实现所有类都理解的最基本公有接口[例如,拷贝操作(深 ...