Oracle Solaris Studio 12.2:使用 dbx 调试程序

输出符号具体值列表

要输出指定符号的所有具体值的列表,请使用 whereis symbol,其中 symbol 可以是用户定义的任何标识符。例如:


(dbx) whereis table
forward: `Blocks`block_draw.cc`table
function: `Blocks`block.cc`table::table(char*, int, int, const point&)
class: `Blocks`block.cc`table
class: `Blocks`main.cc`table
variable:       `libc.so.1`hsearch.c`table

输出内容包括程序在其中定义 symbol 的可装入对象的名称,以及每个对象的实体类型:类、函数或变量。

由于 dbx 符号表中的信息是在需要时才读入,因此 whereis 命令只记录已装入符号的具体值。随着调试会话越来越长,具体值列表也会增长(请参见目标文件和可执行文件中的调试信息)。

有关更多信息,请参见whereis 命令