A type of token
extracted during the lexical analysis
phase of compiling a computer program
. Most programming language
define an identifier as a letter2
followed by any number of letters or digits. However, most languages3
reserve certain of these character sequences as keywords
, not allowing programmers to make identifiers from them.
Programmers create identifiers to name things in their programs:
There is at least one language that confuses identifiers and string literals, and infers which is which only from context.
The definition of a "letter" varies between computer languages. Some allow only upper case
letters, but most allow lower case
letters and/or underscore
Again, some languages recognize keywords only where they are meaningful as keywords, and allow them to be used as identifers! There is the opposite example of C++
which reserves any sequence beginning with an underscore followed by a capital letter or another underscore for compiler and library implementors.