Whole document tree
    

Whole document tree

Debugging with GDB: C Constants
[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

9.4.1.2 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.

9.4.1.3 C++ expressions  
9.4.1.4 C and C++ defaults  
9.4.1.5 C and C++ type and range checks  

9.4.1.6 GDB and C  


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

This document was generated by root on January, 30 2002 using texi2html