# gdb.info: C Constants

**Go forward to C plus plus expressions**

**Go backward to C Operators**

**Go up to C**

**Go to the top op gdb**

# C and C++ constants

GDB allows you to express the constants of C and C++ in the following
ways:

* Integer constants are a sequence of digits. Octal constants are
specified by a leading `0' (i.e. zero), and hexadecimal constants
by a leading `0x' or `0X'. Constants may also end with a letter
`l', specifying that the constant should be treated as a `long'
value.

* Floating point constants are a sequence of digits, followed by a
decimal point, followed by a sequence of digits, and optionally
followed by an exponent. An exponent is of the form:
`e[[+]|-]NNN', where NNN is another sequence of digits. The `+'
is optional for positive exponents. A floating-point constant may
also end with a letter `f' or `F', specifying that the constant
should be treated as being of the `float' (as opposed to the
default `double') type; or with a letter `l' or `L', which
specifies a `long double' constant.

* Enumerated constants consist of enumerated identifiers, or their
integral equivalents.

* Character constants are a single character surrounded by single
quotes (`''), or a number--the ordinal value of the corresponding
character (usually its ASCII value). Within quotes, the single
character may be represented by a letter or by "escape sequences",
which are of the form `\NNN', where NNN is the octal representation
of the character's ordinal value; or of the form `\X', where `X'
is a predefined special character--for example, `\n' for newline.

* String constants are a sequence of character constants surrounded
by double quotes (`"'). Any valid character constant (as described
above) may appear. Double quotes within the string must be
preceded by a backslash, so for instance `"a\"b'c"' is a string of
five characters.

* Pointer constants are an integral value. You can also write
pointers to constants using the C operator `&'.

* Array constants are comma-separated lists surrounded by braces `{'
and `}'; for example, `{1,2,3}' is a three-element array of
integers, `{{1,2}, {3,4}, {5,6}}' is a three-by-two array, and
`{&"hi", &"there", &"fred"}' is a three-element array of pointers.

Created Mon Nov 8 17:42:38 2004 on tillpc with info_to_html version 0.9.6.