RAD Studio
ContentsIndex
PreviousUpNext
Constants

Constants are tokens representing fixed numeric or character values.  

The compiler supports four classes of constants: integer, floating point, character (including strings), and enumeration.  

Internal representation of numerical types shows how these types are represented internally. 

The data type of a constant is deduced by the compiler using such clues as numeric value and the format used in the source code. The formal definition of a constant is shown in the following table.  

Constants: Formal Definitions  

constant:
floating-constant
integer-constant
numeration-constant
character-constant  
nonzero-digit: one of
1 2 3 4 5 6 7 8 9  
floating-constant:
fractional-constant <exponent-part> <floating-suffix>
digit-sequence exponent-part <floating-suffix>  
octal-digit: one of
0 1 2 3 4 5 6 7  
fractional-constant:
<digit-sequence> . digit-sequence
digit-sequence . a b c d e f  
hexadecimal-digit: one of
0 1 2 3 4 5 6 7 8 9
A B C D E F  
exponent-part:
e <sign> digit-sequence
E <sign> digit-sequence  
integer-suffix:
unsigned-suffix <long-suffix>
long-suffix <unsigned-suffix>  
sign: one of
  • -
 
unsigned-suffix: one of
u U  
digit-sequence:
digit
digit-sequence digit  
long-suffix: one of
l L  
floating-suffix: one of
f l F L  
enumeration-constant:
identifier  
integer-constant:
decimal-constant <integer-suffix>
octal-constant <integer-suffix>
hexadecimal-constant <integer-suffix>  
character-constant
c-char-sequence  
decimal-constant:
nonzero-digit
decimal-constant digit  
c-char-sequence:
c-char
c-char-sequence c-char  
octal-constant:
0
octal-constant octal-digit  
c-char:
Any character in the source character set
except the single-quote ('), backslash (\), or
newline character escape-sequence.  
hexadecimal-constant:
0 x hexadecimal-digit
0 X hexadecimal-digi
hexadecimal-constant hexadecimal-digit  
escape-sequence: one of the following
\" \' \? \\
t \a \b \f \n
\o \oo \ooo \r
\t \v \Xh... \xh...  
Copyright(C) 2009 Embarcadero Technologies, Inc. All Rights Reserved.
What do you think about this topic? Send feedback!