Delphi运算符总结
| 分类 | 运算符 | 操作 | 操作数 | 结果类型 | 范例 |
|---|---|---|---|---|---|
| 算术运算符(加法、减法和乘法运算符的结果为参加运算的两个数据中的精度高的类型) | + | 加 | 整数,实数 | 整数,实数 | 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运算符总结的更多相关文章
- delphi 运算符重载
譬如上面的 record 可以这样声明: type TMyRec = record name: string; age: Word; class operator Grea ...
- Delphi运算符及优先级
单目运算符 (最高优先级) @ 取变量或函数的地址(返回一个指针) not 逻辑取反或按位取反 乘除及按位运算符 * 相乘或集合交集 / 浮点相除 div 整数相除 mod 取模 (整数相除的余数) ...
- Delphi 的运算符列表,运算符及优先级表格 good
Delphi 的运算符列表 分类 运算符 操作 操作数 结果类型 范例 算术运算符 + 加 整数,实数 整数,实数 X + Y - 减 整数,实数 整数,实数 Result - 1 * 乘 整数,实数 ...
- Delphi中的关键字与保留字
Delphi中的关键字与保留字 分类整理 Delphi 中的“关键字”和“保留字”,方便查询 感谢原作者的收集整理! 关键字和保留字的区别在于,关键字不推荐作标示符(编译器已经内置相关函数或者留给保留 ...
- delphi “div”、“mod”、“\”除法运算符的区别与使用方法(附带FORMAT使用方法)
Delphi中和除法相关的算术运算符有: div.mod和符号“\” 下面分别对他们的作用.操作数类型和返回值类型进行一下介绍: div:对2个整数进行除,取商,操作数需是integer类型,返回值也 ...
- Delphi 的运算符列表
分类 运算符 操作 操作数 结果类型 范例 算术运算符 + 加 整数,实数 整数,实数 X + Y - 减 整数,实数 整数,实数 Result - 1 * 乘 整数,实数 整数,实数 P * Int ...
- Delphi 字符串运算符
- Delphi 算术运算符与算术表达式
- Delphi 关键字详解[整理于 "橙子" 的帖子]
absolute //它使得你能够创建一个新变量, 并且该变量的起始地址与另一个变量相同. var Str: ]; StrLen: Byte absolute Str; //这个声明指定了变量 ...
随机推荐
- Delphi中Interface接口的使用方法
示例注释(现在应该知道的): { 1.接口命名约定 I 起头, 就像类从 T 打头一样. 2.接口都是从 IInterface 继承而来; 若是从根接口继承, 可省略. 3.接口成员只能是 ...
- HDU 2855 斐波那契+矩阵快速幂
http://acm.hdu.edu.cn/showproblem.php?pid=2855 化简这个公式,多写出几组就会发现规律 d[n]=F[2*n] 后面的任务就是矩阵快速幂拍一个斐波那契模板出 ...
- linux/windows下启用和停止VMware后台服务的脚本
linux/windows下启用和停止VMware后台服务的脚本 linux/windows下启用和停止VMware后台服务的脚本 linux平台 windows平台 本文由乌合之众 lym瞎编,欢迎 ...
- linux——基本配置
环境:Ubuntu 12.04.2 LTS (GNU/Linux 3.5.0-23-generic i686) 网络配置 #临时改变 #修改IP和子网掩码 sudo ifconfig eth0 192 ...
- 【GoLang】golang 交叉编译 实现&工具
apt-get install gcc-mingw-w64 env CGO_ENABLED= GOOS=windows GOARCH=amd64 CC=x86_64-w64-mingw32-gcc g ...
- C#中堆和栈的区别分析
线程堆栈:简称栈 Stack托管堆: 简称堆 Heap 使用.Net框架开发程序的时候,我们无需关心内存分配问题,因为有GC这个大管家给我们料理一切.如果我们写出如下两段代码: 1 代码段1: 2 3 ...
- POJ 1426
http://poj.org/problem?id=1426 一道广搜的题目. 题意就是给你一个n,要你求出n的倍数中,只存在0和1的那个数字 所谓的只存在0和1,那么就是某个数的十倍或者十倍+1,而 ...
- ios awakeFromNib 和 initWithCoder:
During the instantiation process, each object in the archive is unarchived and then initialized with ...
- .net Framework Class Library(FCL)
from:http://msdn.microsoft.com/en-us/library/ms229335.aspx 我们平时在VS.net里引用的那些类库就是从这里来的 The .NET Frame ...
- Java for LeetCode 229 Majority Element II
Given an integer array of size n, find all elements that appear more than ⌊ n/3 ⌋ times. The algorit ...