An Identifier is a name for a variable, type, type member, template, class, function, namespace etc and is usually limited to letters, digits and underscores. Certain words are reserved and cannot be used as identifiers such as new.
Computer languages often have restrictions on what characters may appear in an identifier. For example, in early versions of the C and C++ languages, identifiers were restricted to being a sequence of one or more ASCII letters, digits (these may not appear as the first character), and underscores. Later versions of these languages support almost all Unicode characters in an identifier (usually these do not allow white space characters and language operators).
For implementations of programming languages that are compiled, identifiers are often only compile time entities. That is, at runtime the compiled program contains references to memory addresses and offsets rather than the textual identifier tokens (these memory addresses, or offsets, having been assigned by the compiler to each identifier).