Becomes/zh CN

From Lazarus wiki
Revision as of 13:11, 11 May 2016 by Wtwangcb (talk | contribs) (Created page with "<div style="float:left; margin: 0 10px 20px 0; padding:40px; font-size:500%; font-family: Georgia; background-color: #f9f9f9; border: 2px solid #777777;">:=</div> 符号 ''...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search
:=


符号  := (符号 冒号 跟着符号 等号, 中间没空格或其他字符) 读作 成为(变成),在 Pascal 中意思是 被赋值为...:

 A := 4 ;
 Circle_Area := Pi * Diameter ;
 Name := 'Smith' ;
 C := 1000 - C div 2 ;

使用两个符号,冒号加等号(而不是只用一种,比如说光用=等号)是为了区分赋值与相等比较。

例如,在Pascal以外的语言您可以写

A = B = D ;
A = B = D

取决与分号在那种语言中是否必要。

该表达式的含义取决于语言。例如,在Fortran和Basic中,该表达式意思是将A赋值为“B和D相等吗?” 在C语言中,该表达式意思是将变量A和B的值赋值给D。这种类型的指令错误在C语言中再常见不过了以至于这种表达式经常被编译器标识一个警告,除非您通过在表达式两旁加括号告诉编译器您是有意这么做(多重赋值)。在C语言中测试相等的正确做法是使用A = B == D;

在Pascal中这种混淆不会发生的,因为该语句非法。您可以写

A := B = D;

意思与FORTRAN或BASIC相同,就是将A赋值为“B和D相等吗?”

要将A,B,D赋予相同的值需要显式的分开赋值形式

A := D ; B := D ;
B := D ; A := B ;
A := D ; B := A ;

取决于在执行中是否有差异或有副作用 (D 可以式一个动态变量,比方说一个系统 port, 一个 函数 或是一个对象属性 ,因此标识符 identifier D 在第一和第二个赋值示例中可能回有所不同)


navigation bar: topic: Pascal symbols
single characters

+ (plus)  •  - (minus)  •  * (asterisk)  •  / (slash)
= (equal)  •  > (greater than)  •  < (less than)
. (period)  •  : (colon)  •  ; (semi colon)
^ (hat)  •  @ (at)
$ (dollar sign)  •  & (ampersand)  •  # (hash)
' (single quote)

character pairs

<> (not equal)  •  <= (less than or equal)  •  := (becomes)  •  >= (greater than or equal)

 •  >< (symmetric difference)  •  // (double slash)