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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分類 范圍 字節 備注
簡單類型 序數 整數 Integer -2147483648 .. 2147483647 4 有符號32位
Cardinal 0 .. 4294967295 4 無符號32位
Shortint -128 .. 127 1 有符號8位
Smallint -32768 .. 32767 2 有符號16位
Longint -2147483648 .. 2147483647 4 有符號32位
Int64 -263 .. 263 8 有符號64位
Byte 0 .. 255 1 無符號8位
Word 0 .. 65535 2 無符號16位
Longword 0 .. 4294967295 4 無符號32位
字符 AnsiChar(Char) ANSI字符集   8位
WideChar Unicode字符集   16位
布爾 Boolean False < True       Ord(False) = 0       Ord(True) = 1       Succ(False) = True       Pred(True) = False 1  
ByteBool False <> True       Ord(False) = 0       Ord(True) <> 0        Succ(False) = True       Pred(False) = True 1  
WordBool 2  
LongBool 4  
枚舉        
子界        
實數   Real 5.0×10-324 .. 1.7×10308 8 [精度]15..16
Real48 2.9×10-39 .. 1.7×1038 6 [精度]11..12; 向后兼容
Single 1.5×10-45 .. 3.4×1038 4 [精度]7..8
Double 5.0×10-324 .. 1.7×10308 8 [精度]15..16
Extended 3.6×10-4951 .. 1.1×104932 10 [精度]19..20
Comp -263 + 1 .. 263 - 1 8 [精度]19..20
Currency -922337203685477.5808 ..   922337203685477.5807 8 [精度]19..20
字符串     ShortString 255個字符 2..256B 向后兼容
AnsiString 大約 231 個字符 4B..2GB 8位(ANSI)字符
WideString 大約 230 個字符 4B..2GB 多用戶服務和       多語言應用程序; 和com定義的BSTR兼容
其他 String       String[0..255]       PChar       PAnsiString       PWideString    
結構類型 集合   Set 最多256個元素[0..255]    
數組 靜態數組        
動態數組        
記錄   Record      
文件   File      
  Class      
類引用   Class reference      
接口   Interface      
指針類型 無類型指針   Pointer      
有類型指針 預定義類型指針 PAnsiString       PString       PByteArray       PCurrency       PDouble       PExtended       PSingle       PInteger       POleVariant       PShortString       PTextBuf       PVarRec       PVariant       PWideString       PWordArray      
過程類型 程序過程類型   Procedural      
對象過程類型   Procedural      
變體類型     Variant      
  OleVariant      

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM