| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
By default, GDB prints a value according to its data type. Sometimes this is not what you want. For example, you might want to print a number in hex, or a pointer in decimal. Or you might want to view data in memory at a certain address as a character string or as an instruction. To do these things, specify an output format when you print a value.
The simplest use of output formats is to say how to print a value
already computed. This is done by starting the arguments of the
print command with a slash and a format letter. The format
letters supported are:
xRegard the bits of the value as an integer, and print the integer in hexadecimal.
dPrint as integer in signed decimal.
uPrint as integer in unsigned decimal.
oPrint as integer in octal.
tPrint as integer in binary. The letter `t' stands for "two". (2)
aPrint as an address, both absolute in hexadecimal and as an offset from the nearest preceding symbol. You can use this format used to discover where (in what function) an unknown address is located:
(gdb) p/a 0x54320 $3 = 0x54320 <_initialize_vx+396> |
The command info symbol 0x54320 yields similar results.
See section info symbol.
cRegard as an integer and print it as a character constant.
fRegard the bits of the value as a floating point number and print using typical floating point syntax.
For example, to print the program counter in hex (see section Registers), type
p/x $pc |
Note that no space is required before the slash; this is because command names in GDB cannot contain a slash.
To reprint the last value in the value history with a different format,
you can use the print command with just a format and no
expression. For example, `p/x' reprints the last value in hex.
| [ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated by Build Daemon user on October, 25 2005 using texi2html 1.76.