设为首页 加入收藏

TOP

Delphi_03_Delphi_Object_Pascal_基本语法_01(一)
2017-10-10 12:06:29 】 浏览:2270
Tags:Delphi_03_Delphi_Object_Pascal_ 基本 语法 _01

  这次是一个基本语法的第一部分,包括变量、变量初始化、常量、运算符、字符串等内容。

{
        本程序演示 Delphi Pascal 的基本语法
1、变量及变量的初始化
2、常量
3、运算符
3、
4、

}
program Syntax;

{$APPTYPE CONSOLE}

uses
  SysUtils,Windows,StrUtils;


{       变量
1、Delphi中变量必须在固定的地方进行定义
2、Delphi中通过关键字 var 来定义变量
3、语法格式为:
                var  变量名标识符列表 : 变量类型 ;
    变量名列表中的各个变量名之间用逗号隔开
4、初始化格式为
                var  变量名标识符列表 : 变量类型 = 初始化值;

5、注意三个符号的位置 冒号  等于号 和 分号
}
var
    //第一种形式的变量定义
    greetWord:string;
    //第二种形式的变量定义
    nAdd,nAddFactor:integer;

    //变量的初始化
    rad : single = 5.0 ;

    //宽字符字符串
    chinaName:WideString;
    //ansichar 类型单字节字符串
    englishName:AnsiString;

    //定义一个没有初始化的字符串
    noInitString:string;

    //定义一个与win32兼容的字符串
    dirWideString:widestring;
    dirString:ansistring;



{       常量
1、Delphi中预定义了一部分常量
        true   Boolean 类型的true
        false  Boolean 类型的false

2、在Delphi中利用 const 关键字定义常量
3、语法格式为
                const  常量名标识符 : 常量的数据类型 = 初始化值。
4、初始化值必须有,常量的数据类型可以省略,Delphi会根据初始化值自动确定
    常量的数据类型,进而分配相应的内存空间。 但是对于整数型的常量,内存
    空间的分配遵循能容纳初始化值的最小空间数据类型确定。
    例如:
            10 会确定为 shortint类型
5、常量还有一种常量字面值,就是和C语言中一样的字面值,例如
    10    整数常量
    2.06  实数常量
    'Hello world' 字符串常量
    'a' 字符常量

}
const
    pi:single=3.1415926;

{       要点
1、Delphi中允许在定义变量和常量的时候使用编译期函数来初始化变量。
2、常见的编译期函数有:
        Sizeof()
        Ord()
        Chr()
        Trunc()
        Round()
        High()
        Low()
    这里就不举例啦,一般不太会用到,
}

begin
    //赋值运算符 :=
    greetWord := 'Hello, Wellcome to Delphi world!';

    //比较运算符 = 判断是否相等
    nAdd := 10;
    nAddFactor := 1;
    if nAdd = nAddFactor then
    begin
        writeln('Equal.');
    end;

    //比较运算符  <> 不等于运算符, 如果不相等则返回TRUE
    if nAdd <> nAddFactor then
    begin
        writeln('Not Equal.');
    end;

    //逻辑运算符  and 与 ,注意Delphi中逻辑运算符的优先级要高于比较运算符
    if (1 = nAdd) and (2 <> nAddFactor )then
    begin
        writeln('The judge is ture.');
    end;

    //逻辑或   or  非 , 注意Delphi中逻辑运算符的优先级要高于比较运算符
    if (1 = nAdd) or (2 <> nAddFactor )then
    begin
        writeln('The judge is ture.');
    end;


    //逻辑非  not 非, 注意Delphi中逻辑运算符的优先级要高于比较运算符
    if not (1 = nAdd) then
    begin
        writeln('1 is not equal nAdd.');
    end;

    {       数学运算符
    1、数学运算符基本与C语言类似,但是有几个特殊的需要说明一下
    2、mod  求模运算符
    3、div  整数除法, 得到的结果是整数
    4、/    浮点数除法,得到的结果是浮点数
    }
    writeln('整数除法 3 div 2 的结果是:');
    writeln(3 div 2);

    writeln('浮点数除法 3 / 2 的结果是:');
    writeln(3 / 2);

    writeln('求余数 3 mod 2 的结果是:');
    writeln(3 mod 2);


    {       按位运算符
    1、Delphi也提供了按位运算的运算符
    2、and  按位与
    3、or   按位或
    4、not  按位非
    5、xor  按位异或
    6、shl  按位左移
    7、shr  按位右移
    }
    writeln('2 and 5 按位与的结果是:');
    writeln(2 and 5);

    writeln('2 or 5 按位或的结果是:');
    writeln(2 or 5);

    writeln('not 2 按位非的结果是:');
    writeln(not 2);

    writeln('2 xor 5 按位异或的结果是:');
    writeln(2 xor 5);

    writeln('2 shl 5 按位左移的结果是:');
    writeln(2 shl 5);

    writeln('2 shr 5 按位右移的结果是:');
    writeln(2 shr 5);

    {       增量运算符
    1、inc 增加
    2、dec 减小
    3、有两种形式   inc(a); 得到的结果是 a := a + 1
                    inc(a, b); 得到的结果是 a := a + b
    }
    writeln('nAdd is:');
    writeln(nAdd);
    writeln('Inc(nAdd) is:');
    Inc(nAdd);
    writeln(nAdd);
    Dec(nAdd);
    writeln('Dec(nAdd) is:');
    writeln(nAdd);

    {       数据类型
    1、整数 8位、16位、32位有符号无符号整数,64位有符号整数
    2、4位、6位、8位、10位浮点型,64位货币类型
    3、1字节字符、2字节字符
    4、定长字符串、变长字符串
    5、NULL结尾字符串、NULL结尾宽字符串
    6、动态两字节字符串
    7、1字节、2字节、4字节boolean类型
    }

    //ansichar 具有标准一字节大小
    if sizeof(char)=sizeof(ansichar) then
    begin
        writeln('char and ansichar have the same size.');
    end;

    //char 具有和widechar一样的有两字节大小
    if sizeof(char)=sizeof(widechar) then
    begin
        writeln('char and widechar have the same
首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇[修复] Firemonkey 使用 DrawPath.. 下一篇Delphi_04_Delphi_Object_Pascal_..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目