标识符 编辑

标识符标识符

标识符(identifier)是指用来标识某个实体的一个符号,在不同的应用环境下有不同的含义。在计算机编程语言中,标识符是用户编程时使用的名字,用于给变量、常量、函数、语句块等命名,以建立起名称与使用之间的关系。标识符通常由字母和数字以及其它字符构成。

简介

编辑
在程序设计语言中,标识符是用作程序的某一元素的名字的字符串或用来标识程序中某个对象的名字的 。这个元素可以是一个语句标号,一个过程或函数、一个数据元素(例如一个标量变量或一个数组)或程序本身。最通常是,标识符这个字几乎与变量名同义地使用。在程序数据的位置在整个程序执行期间保持不变的系统中,用于标量变量的标识符联系到存储器地址,而存储器地址又指向机器的存储器内的物理单元,该单元又含有一个值的表示。标识符与一个值之间的中间关系通常对程序员是透明的,因此在实际中在一个变量的名字(即其标识符)与其值(它是分配给该标识符的存储单元的当前内容)之间出现混淆。在大多数程序设计语言中,标识符可由任何字母数字字符串形成,长度往往有限制(通常为6到8个字符),只要最左边字符是字母。有些语言还容许采用专用字符。

编程语言的标识符

编辑

C语言

  • 1.

    标识符由字母(A-Z,a-z)、数字(0-9)、下划线“_”组成,并且首字符不能是数字,但可以是字母或者下划线。例如,正确的标识符:abc,a1,prog_to。

  • 2.

    不能把C语言关键字作为用户标识符,例如if,for,while等。

  • 3.

    标识符长度是由机器上的编译系统决定的,一般的限制为8字符(注:8字符长度限制是C89标准,C99标准已经扩充长度,其实大部分工业标准都更长)。

  • 4.

    标识符对大小写敏感,即严格区分大小写。一般对变量名用小写,符号常量命名用大写。

  • 5.

    标识符命名应做到“见名知意”,例如,长度(length),求和、总计(sum),圆周率(pi)……

    C语言中把标识符分为三类:关键字,预定义标识符,用户自定义标识符 。

    C++

  • 1.

    标识符由字母、数字、下划线“_”组成。

  • 2.

    不能把C++关键字作为标识符。

  • 3.

    标识符长度限制32字符。

  • 4.

    标识符对大小写敏感。

  • 5.

    首字符只能是字母或下划线,不能是数字。

    JAVA

  • 1.

    标识符由字母、数字、下划线“_”、汉字、美元符号“$”组成,第一个字符不能是数字。

  • 2.

    不能把java关键字和保留字作为标识符。

  • 3.

    标识符没有长度限制。

  • 4.

    标识符对大小写敏感。

    汇编语言

    在汇编语言里,标识符由字母、数字、下划线组成。

    在汇编语言中,标识符的命名规则是:由字母(大、小写皆可)、数字及下划线组成,且第一个字符必须是字母或者下划线,不能用具有意义的指令符号或者寄存器。在汇编语言中,一般用大写字母。

    下面的标识符名是合法的:

    year,Day,ATOK,X,_ CWS,HAO

    而下面的标识符名是不合法的:

    #123,.COM,$100,1996Y,1_2_3,Win3.2,LOOP,AX

    python

    在python里,标识符由字母、数字、下划线组成。

    在python中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。python中的标识符是区分大小写的。

    以下划线开头的标识符是有特殊意义的。以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用“from xxx import *”而导入;以双下划线开头的(__foo)代表类的私有成员;以双下划线开头和结尾的(__foo__)代表python里特殊方法专用的标识,如__init__()代表类的构造函数。

    Delphi

    Delphi语言是一个基于Object Pascal语言的Windows应用程序开发系统,在所有的事件处理过程和应用程序中都是使用它来编写程序代码。

    Delphi语言标识符是Object Pascal语言中用来表示应用程序量的名称。包括:变量(Var)、常量(Const)、类型(Type)、过程(Procedure)、方法(Method)等。标识符分为标准标识符和自定义标识符两类。标准标识符是Object Pascal语言系统预先分配给标准常量、标准类型、标准函数、标准过程及标准文件使用的标识符。如标准常量:False、True;标准类型:integer、char、real;标准函数:Abs、Sqr、Cos等。自定义标识符是程序员根据需要为自己定义的常量、变量、类型、函数、过程以及所编写的程序名等。Object Pascal标识符由字母、数字、下划线组成,其规定为:

    (1)必须以字母或下划线开始;

    (2)不能与保留字相同;

    (3)避免与Object Pascal已经使用的标准标识符相同。

    VB

    第一个为英文大、小写字母或汉字,后面跟着若干数字、英文大小写字母(字母不区分大小写),下划线'_'或美元符号'$',总长度不要超过255个。在Basic语言里,标识符不分字母大小写。另外,在电脑语言中,预先定义了一些标识符,以作专门用途,我们称之为关键字,所以,您命名的标识符不能与关键字相同。还有一种情况也必须注意,那就是在同一个作用域内不允许定义相同的标识符。

    正确的标识符举例:W_absd1234 ,LLLLl ,ab2cd3ef4 。

    由于在Basic语言里,标识符不分字母大小写,所以 LLlll 与 LLLLl指的是同一个标识符,AB2cd3ef4 与 ab2cd3ef4指的是同一个标识符

    错误标识符举例:A12@34 就是一个错误的标识符,因为字符@不能组成标识符;1234 是一个错误的标识符,因为它不是以字母打头;if 就是一个错误的标识符,因为它是一个关键字。

    flash as3

    1.在AS3.0中,变量、类和函数都需要一定的名称方可互相区别,并在程序中准确无误的应用。这些有着特定含义的专有名称叫做标识符。

    2.按照定义的场所,标识符分为两大类:语言内建标识符和用户自定义标识符。

    语言内建标识符:语言内建标识符定义在语言内部。

    用户自定义标识符:用户自己创建的名称就是用户自定义标识符.

    AS3.0中对标识符的技术限制主要包括以下几点

    (1) 所有的标识符大小写敏感。(2) 标识符的首字符必须是英文字母(包括大写或者小写)。(3) 标示符应该由数字(0-9),所有从“A”至“Z”的大写字母、从“a”至“z”的小写字母和下划线“_”构成。(4) 不能与AS3.0k的内建关建字冲突。常见的内建关建字

    as

    break

    case

    catch

    class

    const

    continue

    default

    delete

    do

    else

    extends

    typeof

    finally

    for

    function

    if

    implements

    import

    in

    instanceof

    interface

    internal

    is

    native

    new

    null

    package

    private

    protected

    public

    return

    super

    switch

    this

    throw

    to

    true

    try

    use

    var

    void

    while

    with

    false

    应避免合用的关键字

    each

    get

    set

    namespace

    include

    dynamic

    final

    native

    override

    static

    (5) 尽量避免使用保留字保留关键字

    abstract

    boolean

    byte

    cast

    char

    debugger

    double

    enum

    export

    float

    goto

    intrinsic

    long

    prototype

    short

    synchronized

    throws

    to

    transient

    type

    virtual

    volatile

    dim

    mx

    常见的标识符命名错误

    合法标识符

    非法标识符

    注释

    fromNo12

    from#12

    标识符中不能使用#符号

    my_Boolean

    my-Boolean

    标识符中不能使用“-”符号,应使用“_”代替

    Obj2

    2ndObj

    标识符不能使用数字开头

    myclass

    class

    “class”是内建关键字

    jack_rose

    jack&rose

    符号“&”不能在标识符中使用

    GUI

    G.U.I

    标识符内部不能出现“.”分隔符

    mybreak()

    break()

    “break”是内建关建字不能用于自定义函数名

  • 下一篇 函数

    上一篇 符号表