分类 运算符 操作 操作数 结果类型 范例
算术运算符(加法、减法和乘法运算符的结果为参加运算的两个数据中的精度高的类型) + 整数,实数 整数,实数 X + Y
- 整数,实数 整数,实数 Result - 1
* 整数,实数 整数,实数 P * InterestRate
/ 实数除 整数,实数 实数 X / 2,不同于C中,C中5/2的结果是整数2,但是在Delphi中5/2的结果是2.5。Delphi中/运算符的结果总是实型数据
div 整数除 整数 整数 只能对两个整数进行除法运算,结果为整型数据。例如5 div 3 的值为1,而5 div 2.0是不合法的
mod 取模 整数 整数

Y mod 6,两个操作数也都必须是整数,例如5 mod 3 的值为2

+(一元) 符号等同 整数,实数 整数,实数 +7
-(一元) 符号相反 整数,实数 整数,实数 -X
布尔运算符 not 否定 布尔型 Boolean not (C in MySet)
and 布尔型 Boolean Done and (Total > 0)
or 布尔型 Boolean A or B
xor 异或 布尔型 Boolean A xor B

逻辑(按位)运算符

位运算符的操作数必须是整数

按位运算符通常用来把整数的某个位清0;按位异或运算符通常可以用来把整数的某些位取反,可以用来进行加密和解密,等等;

按位运算在计算机中比加减乘数的运算快很多,因为它比较底层

比如,写的程序的源码是很多ASCII的字符,可以通过位运算符将这些用01表示的ASCII码进行加密……就可以用来制造病毒

not 按位否定 整数 整数 not X,如果a的十进制为5,则其二进制为00000101,not a的值为11111010(补码形式),即十进制的-6
and 按位与 整数 整数 X and Y
or 按位或 整数 整数 X or Y
xor 按位异或 整数 整数 X xor Y,二进制两个相同异或为0,不同时候异或为1
shl 按位左移 整数 整数 X shl 2,对操作数的二进制数按位左移,1010左移一位结果是0100,最后的用0来填充
shr 按位右移 整数 整数 Y shr I,对操作数的二进制按位右移,1011右移一位结果是0101,最前的用0来填充
字符串运算符 + 连接 字符串、压缩串、字符 字符串 'hello'+ 'world'的结果是'helloworld'
指针运算符 + 指针加 字符指针,整数 字符指针 P + I
- 指针减 字符指针,整数 字符指针,整数 P - Q
^ 指针解除参照 指针 指针的基类型 P^
= 相等 指针 Boolean P = Q
<> 不等 指针 Boolean P <> Q
集合运算符 + 并集 集合 集合 Set1 + Set2
- 差集 集合 集合 S – T
* 交集 集合 集合 S * T
<= 子集 集合 Boolean Q <= MySet
>= 超集 集合 Boolean S1 >= S2
= 相等 集合 Boolean S2 = MySet
<> 不等 集合 Boolean MySet <> S1
in 成员 序数,集合 Boolean A in Set1
关系运算符 = 相等 简单类型、类、类引用、接口、串、压缩串 Boolean I = Max
<> 不等 简单类型、类、类引用、接口、串、压缩串 Boolean X <> Y
< 小于 简单类型、串、压缩串、PChar Boolean X < Y
> 大于 简单类型、串、压缩串、PChar Boolean Len > 0
<= 小于或等于 简单类型、串、压缩串、PChar Boolean Cnt <= 1
>= 大于或等于 简单类型、串、压缩串、PChar Boolean I >= 1
类运算符 as 转换 类和类的实例    
is 判断    
=   关系运算符 = 和 <> 也作用于类    
<>      
地址(@)运算符 @X 如果X是一个变量,那么@X返回X的地址。 当编译指示 {$T-} 有效时,@X是Pointer类型;  而在编译指示 {$T+} 状态下时,@X是 ^T 类型,这里的T是X的类型。
@F 如果 F 是一个例程(函数或过程),那么@F返回 F 的入口点,@F的类型总是Pointer。
@类中方法 当 @ 适用于定义在类中的方法时,方法标识符必需被类的名称限定。例如: @TMyClass.DoSomething

Delphi运算符总结的更多相关文章

  1. delphi 运算符重载

    譬如上面的 record 可以这样声明: type   TMyRec = record     name: string;     age: Word;     class operator Grea ...

  2. Delphi运算符及优先级

    单目运算符 (最高优先级) @ 取变量或函数的地址(返回一个指针) not 逻辑取反或按位取反 乘除及按位运算符 * 相乘或集合交集 / 浮点相除 div 整数相除 mod 取模 (整数相除的余数) ...

  3. Delphi 的运算符列表,运算符及优先级表格 good

    Delphi 的运算符列表 分类 运算符 操作 操作数 结果类型 范例 算术运算符 + 加 整数,实数 整数,实数 X + Y - 减 整数,实数 整数,实数 Result - 1 * 乘 整数,实数 ...

  4. Delphi中的关键字与保留字

    Delphi中的关键字与保留字 分类整理 Delphi 中的“关键字”和“保留字”,方便查询 感谢原作者的收集整理! 关键字和保留字的区别在于,关键字不推荐作标示符(编译器已经内置相关函数或者留给保留 ...

  5. delphi “div”、“mod”、“\”除法运算符的区别与使用方法(附带FORMAT使用方法)

    Delphi中和除法相关的算术运算符有: div.mod和符号“\” 下面分别对他们的作用.操作数类型和返回值类型进行一下介绍: div:对2个整数进行除,取商,操作数需是integer类型,返回值也 ...

  6. Delphi 的运算符列表

    分类 运算符 操作 操作数 结果类型 范例 算术运算符 + 加 整数,实数 整数,实数 X + Y - 减 整数,实数 整数,实数 Result - 1 * 乘 整数,实数 整数,实数 P * Int ...

  7. Delphi 字符串运算符

  8. Delphi 算术运算符与算术表达式

  9. Delphi 关键字详解[整理于 "橙子" 的帖子]

    absolute //它使得你能够创建一个新变量, 并且该变量的起始地址与另一个变量相同. var   Str: ];   StrLen: Byte absolute Str; //这个声明指定了变量 ...

随机推荐

  1. 剑指Offer 合并两个排序的链表

    题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则.   思路: 用2个新节点,一个用来存放新链表的头节点,另一个用来移动.当p1,p2有一个到尾部的 ...

  2. COGS 2188. [HZOI 2015] Math 题解

      题目描述: 给定n个数X1-Xn,求下面式子的值(整数部分): n<=107,xi<=109且互不相同. 分析: 其实一开始看见这道题我也吓傻了,k这么大,再说我又是数论鶸渣,打死也不 ...

  3. centos终端中mysql中文显示乱码的处理

    http://stackoverflow.com/questions/3513773/change-mysql-default-character-set-to-utf-8-in-my-cnfhttp ...

  4. NDK学习三: 纯手工编译Hello World

      1.配置环境变量 添加make工具path环境变量: E:\Android\android-ndk-r10b\prebuilt\windows-x86_64\bin     2.编写Hello W ...

  5. gedit配置记

    gedit配置记 起因 突然感觉sublime用用这里那里不方便(虽然很好看> >),然后稍微手调了一下gedit发现gedit还是非常可用的(雾)... 阶段一 我感觉sublime各种 ...

  6. Java集合中Set的常见问题及用法

    在这里演示的案例是衔接Java集合中的List(点击查看)那篇博文的,本节我们学习的Set的用法. Set是Collection的一个重要的子接口,Set中的元素是无序排列的,并且元素不可以重复,被称 ...

  7. ios UIButton shadowcolor 导致黑边问题

    注意这个属性,会导致按钮文字有一定黑边,其实就是阴影效果,如果不是想要的效果,应该把它设置为clearcolor.这种情况在亮色背景下比较突出.

  8. PHP带重试功能的curl

    2016年1月13日 10:48:10 星期三 /** * @param string $url 访问链接 * @param string $target 需要重试的标准: 返回结果中是否包含$tar ...

  9. Tesseract-OCR 3.05 躲过语言文字识别(运行程序+中英日韩语言包)

    最新版本 静态编译 tesseract 3.05.00dev leptonica-1.73 libgif 5.1.3 : libjpeg 8c : libpng 1.6.16 : libtiff 3. ...

  10. centos python2.6 升级到 python2.7

    一开始有这个需求,是因为用 YaH3C 替代 iNode 进行校园网认证时,一直编译错误,提示找不到 Python 的某个模块,百度了一下,此模块是在 Python2.7 以上才有的,但是系统的自带的 ...