定義
在編程語言中,标識符就是程序員自己規定的具有特定含義的詞,比如類名稱,屬性名稱,變量名等。在程序設計語言中,标識符是用作程序的某一元素的名字的字符串或用來标識源程序中某個對象的名字的。這個元素可以是一個語句标号,一個過程或函數、一個數據元素(例如一個标量變量或一個數組)或程序本身。最通常是,标識符這個字幾乎與變量名同義地使用。在程序數據的位置在整個程序執行期間保持不變的系統中,用于标量變量的标識符聯系到存儲器地址,而存儲器地址又指向機器的存儲器内的物理單元,該單元又含有一個值的表示。标識符與一個值之間的中間關系通常對程序員是透明的,因此在實際中在一個變量的名字(即其标識符)與其值(它是分配給該标識符的存儲單元的當前内容)之間出現混淆。在大多數程序設計語言中,标識符可由任何字母數字字符串形成,長度往往有限制(通常為6到8個字符),隻要最左邊字符是字母。有些語言還容許采用專用字符。
編程語言的标識符
Delphi
Delphi語言是一個基于ObjectPascal語言的Windows應用程序開發系統,在所有的事件處理過程和應用程序中都是使用它來編寫程序代碼。
Delphi語言标識符是ObjectPascal語言中用來表示應用程序量的名稱。包括:變量(Var)、常量(Const)、類型(Type)、過程(Procedure)、方法(Method)等。标識符分為标準标識符和自定義标識符兩類。标準标識符是ObjectPascal語言系統預先分配給标準常量、标準類型、标準函數、标準過程及标準文件使用的标識符。如标準常量:False、True;标準類型:integer、char、real;标準函數:Abs、Sqr、Cos等。自定義标識符是程序員根據需要為自己定義的常量、變量、類型、函數、過程以及所編寫的程序名等。ObjectPascal标識符由字母、數字、下劃線組成,其規定為:
(1)必須以字母或下劃線開始;
(2)不能與保留字相同;
(3)避免與ObjectPascal已經使用的标準标識符相同。
VB
第一個為英文大、小寫字母或漢字,後面跟着若幹數字、英文大小寫字母(字母不區分大小寫),下劃線'_'或美元符号'#x27;,總長度不要超過255個。在Basic語言裡,标識符不分字母大小寫。另外,在電腦語言中,預先定義了一些标識符,以作專門用途,我們稱之為關鍵字,所以,您命名的标識符不能與關鍵字相同。還有一種情況也必須注意,那就是在同一個作用域内不允許定義相同的标識符。
我們也支持中文名字。
例:W_absd1234就是一個正确的标識符
A12@34就是一個錯誤的标識符,因為字符@不能組成标識符
1234就是一個錯誤的标識符,因為它不是以字母打頭
LLLLl就是一個正确的标識符
LLlll與LLLLl指的是同一個标識符。
ab2cd3ef4就是一個正确的标識符
AB2cd3ef4與ab2cd3ef4指的是同一個标識符
中國龍也是一個正确的标識符
if就是一個錯誤的标識符,因為它是一個關鍵字。
C語言
标識符由字母(A-Z,a-z)、數字(0-9)、下劃線“_”組成,并且首字符不能是數字,但可以是字母或者下劃線。例如,正确的标識符:abc,a1,prog_to。
不能把C語言關鍵字作為用戶标識符,例如if,for,while等.
标識符長度是由機器上的編譯系統決定的,一般的限制為8字符(注:8字符長度限制是C89标準,C99标準已經擴充長度,其實大部分工業标準都更長)。
标識符對大小寫敏感,即嚴格區分大小寫。一般對變量名用小寫,符号常量命名用大寫。
标識符命名應做到“見名知意”,例如,長度(外語:length),求和、總計(外語:sum),圓周率(外語:pi)……
C語言中把标識符分為三類:關鍵字,預定義标識符,用戶自定義标識符。
C++
标識符由字母、數字、下劃線“_”組成。
不能把C++關鍵字作為标識符。
标識符長度限制32字符。
标識符對大小寫敏感。
首字符隻能是字母或下劃線,不能是數字。
JAVA
标識符由字母、數字、下劃線“_”、美元符号“$”組成,第一個字符不能是數字。
不能把java關鍵字和保留字作為标識符。
标識符沒有長度限制。
标識符對大小寫敏感。
彙編語言
在彙編語言裡,标識符由字母、數字、下劃線組成。
在彙編語言中,标識符的命名規則是:由字母(大、小寫皆可)、數字及下劃線組成,且第一個字符必須是字母或者下劃線,不能用具有意義的指令符号或者寄存器。在彙編語言中,一般用大寫字母。
下面的标識符名是合法的:
year,Day,ATOK,X,_CWS,HAO
而下面的标識符名是不合法的:
#123,.COM,$100,1996Y,1_2_3,Win3.2,LOOP,AX
python
在python裡,标識符有字母、數字、下劃線組成。
在python中,所有标識符可以包括英文、數字以及下劃線(_),但不能以數字開頭。python中的标識符是區分大小寫的。
以下劃線開頭的标識符是有特殊意義的。以單下劃線開頭(_foo)的代表不能直接訪問的類屬性,需通過類提供的接口進行訪問,不能用“fromxxximport*”而導入;以雙下劃線開頭的(__foo)代表類的私有成員;以雙下劃線開頭和結尾的(__foo__)代表python裡特殊方法專用的标識,如__init__()代表類的構造函數。
flashas3
1.在AS3.0中,變量、類和函數都需要一定的名稱方可互相區别,并在程序中準确無誤的應用。這些有着特定含義的專有名稱叫做标識符。
2.按照定義的場所,标識符分為兩大類:語言内建标識符和用戶自定義标識符。
語言内建标識符:語言内建标識符定義在語言内部。
用戶自定義标識符:用戶自己創建的名稱就是用戶自定義标識符.
AS3.0中對标識符的技術限制主要包括以下幾點
(1)所有的标識符大小寫敏感。(2)标識符的首字符必須是英文字母(包括大寫或者小寫)。(3)标示符應該由數字(0-9),所有從“A”至“Z”的大寫字母、從“a”至“z”的小寫字母和下劃線“_”構成。(4)不能與AS3.0k的内建關建字沖突。
常見的内建關建字:
應避免合用的關鍵字
盡量避免使用保留字保留關鍵字
常見的标識符命名錯誤