Delphi 的运算符列表

分类

运算符

操作

操作数

结果类型

范例

算术运算符

+

整数,实数

整数,实数

X + Y

-

整数,实数

整数,实数

Result - 1

*

整数,实数

整数,实数

P * InterestRate

/

实数除

整数,实数

实数

X / 2

div

整数除

整数

整数

Total div UnitSize

mod

取模

整数

整数

Y mod 6

+(一元)

符号等同

整数,实数

整数,实数

+7

-(一元)

符号相反

整数,实数

整数,实数

-X

布尔运算符

not

否定

布尔型

Boolean

not (C in MySet)

and

布尔型

Boolean

Done and (Total > 0)

or

布尔型

Boolean

A or B

xor

异或

布尔型

Boolean

A xor B

逻辑(按位)运算符

not

按位否定

整数

整数

not X

and

按位与

整数

整数

X and Y

or

按位或

整数

整数

X or Y

xor

按位异或

整数

整数

X xor Y

shl

按位左移

整数

整数

X shl 2

shr

按位右移

整数

整数

Y shr I

字符串运算符

+

连接

字符串、压缩串、字符

字符串

S + '.'

指针运算符

+

指针加

字符指针,整数

字符指针

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 运算符及优先级

单目运算符 (最高优先级)
@ 取变量或函数的地址(返回一个指针)
not 逻辑取反或按位取反
乘除及按位运算符
* 相乘或集合交集
/ 浮点相除
div 整数相除
mod 取模 (整数相除的余数)
as 程序运行阶段类型转换 (RTTI运算符)
and 逻辑或按位求和
shl 按位左移
shr 按位右移
加减运算符
+ 相加、集合并集、字符串连接或指针增加一个偏移量
- 相减、集合差集或指针减少一个偏移量
or 逻辑或按位或运算
xor 逻辑或按位异或运算
关系及比较运算符(最低优先级)
= 判断是否相等
<> 判断是否不相等
< 判断是否小于
> 判断是否大于
<= 判断是否小于或等于,或是否是一个集合的子集
>= 判断是否大于或等于,或是否是一个集合的父集
in 判断是否是集合成员
is 判断对象是否类型兼容 (又一个RTTI运算符)

参考:http://blog.csdn.net/sforiz/article/details/6680690

Delphi 的运算符列表,运算符及优先级表格 good的更多相关文章

  1. 003-Python3-基础语法-运行方式、代码基础要求、运算符[算数运算符、比较运算符、赋值运算符、位运算符、逻辑运算符、成员运算符、身份运算符]、运算符优先级

    一.基础语法 参看地址:https://www.runoob.com/python3/python3-tutorial.html 1.1.运行方式 1.文件方式 编写一个hello.py文件, pri ...

  2. JavaScript中涉及得运算符以及运算符的优先级

    在js中主要有三种运算符:算术运算符,逻辑与比较运算符,位运算符.在着三种运算符中,最常见的应该是算术与比较运算符,位运算符比较少见一些 *说到了运算符,就不得不说运算符的优先级.下面我来列一下这些运 ...

  3. C++语言运算符的功能、优先级和结合性

    优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[常量表达式] 左到右   () 圆括号 (表达式)/函数名(形参表)   . 成员选择(对象) 对象.成员名   -& ...

  4. smarty 运算符列表

    下面是可用的运算符列表,使用中都会放到元素的中间并且用空格分隔. 注意列表中[方括号]的是可选的,而且还会列出对应PHP的表达式. 详见:Chapter 7. 内置函数 运算符 别名 语法示例 含义 ...

  5. (4)javascript的运算符以及运算符的优先级

                                    运算符的使用方法 在javascript的程序中要完成各种各样的运算,是离不开运算符的. 在javascript中,按运算符类型可以分为 ...

  6. 跟着ALEX 学python day2 基础2 模块 数据类型 运算符 列表 元组 字典 字符串的常用操作

    声明 : 文档内容学习于 http://www.cnblogs.com/xiaozhiqi/  模块初始: Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相 ...

  7. 【Python】2.19学习笔记 成员运算符,身份运算符,运算符优先级

    成员运算符 暂时不会用,等学链表时再补充 \(in\) 与 \(not in\) \(in\):如果在指定序列中找到指定值,则返回\(true\) \(not in\):如果在指定序列中找到指定值,则 ...

  8. 031 01 Android 零基础入门 01 Java基础语法 03 Java运算符 11 运算符的优先级

    031 01 Android 零基础入门 01 Java基础语法 03 Java运算符 11 运算符的优先级 本文知识点:Java中运算符的优先级 运算符的优先级问题 前面学习了很多的运算符,如果这些 ...

  9. js运算符 及 运算符优先级

    「运算符」是用于实现赋值.比较和执行算数运算等功能的符号.常用运算符分类如下符号 算数运算符 递增和递减运算符 比较运算符 逻辑运算符 赋值运算符 算数运算符 运算符 描述 案例 + 加 10+20= ...

随机推荐

  1. [RxJS] Transformation operator: bufferToggle, bufferWhen

    bufferToggle(open: Observable, () => close: Observalbe : Observalbe<T[]>) bufferToggle take ...

  2. win主机用web.config和httpd.ini实现301重定向

    当你准备好好看这篇文章的时候,你应该已经知道了301重定向的作用与意义了,那么这里就不多加解释了. 那么我唯一想提的就是关于域名带与不带www的区别,并且301重定在其中的意义,详情:域名带与不带ww ...

  3. VS2012减负:加快启动速度,减少编辑卡壳

    我公司的笔记本配置如下: CPU:i5-3210M @ 2.50 GHz 2.50 GHz mem: 4.00 GB OS: 64bit Win7 用VS2012编译Cocos2d-X项目时非常的卡. ...

  4. 转载:JAVA 正则表达式 (超详细)

    在Sun的JavaJDK 1.40版本中,Java自带了支持正则表达式的包,本文就抛砖引玉地介绍了如何使用Java.util.regex包. 可粗略估计一下,除了偶尔用Linux的外,其他Linu x ...

  5. iOS UIKit:viewController之Segues (4)

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...

  6. 实现一个线程安全的Queue队列

    使用装饰者模式实现一个线程安全的Queue队列. public class SynchronizedQueue<E> implements Queue<E>, Serializ ...

  7. Java批量文件打包下载zip

    网上看了很多,本文使用ant.jar中的org.apache.tools.zip,页面用js表单提交 代码供参考: ACTION: /* * 另存为 */ @RequestMapping(" ...

  8. Jquery 判断滚动条到达顶部或底部

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. producer怎样发送消息到指定的partitions

    http://www.aboutyun.com/thread-9906-1-1.html http://my.oschina.net/u/591402/blog/152837 https://gith ...

  10. 初识 Angular 体会

    一句话描述:一个前端的类似MVC框架的JS库 刚接触2天,刚一看感觉和asp.net mvc能实现的功能有点重复. 虽然asp.net的表单验证,Razor语法使其在前端开发有较大提升,但要实现比较高 ...