cxref [options] files
cxref 命令可分析 C 文件的集合,并生成交叉引用表。cxref 使用特殊版本的 cc 包括符号表中用 #define 定义的信息。它会在每个单独的文件中生成所有符号(自动、静态和全局)的列表,或者与 -c 选项一起使用。此表包括四个字段:"NAME"(名称)、"FILE"(文件)、"FUNCTION"(函数)和 "LINE"(行)。在适当的情况下,"LINE"(行)字段中出现的行号也会显示引用标记。引用标记包括:
assignment = declaration - definition *
如果未出现任何引用标记,您可以采用常规引用。
cxref 解释 -D、-I、-U 选项的方式与 cc 相同。此外,cxref 还会解释以下选项:
仅运行 cxref 的首次传递,从而创建稍后可传递给 cxref 的 .cx 文件。这类似于 cc 或 lint 的 -c 选项。
将源文件组合到单个报告中。如果不使用 -c 选项,cxref 会为命令行中的每个文件生成单独的报告。
禁用输出声明,从而使报告更易于读取。
输出所引用文件名的完整路径。
在 "LINE"(行)字段中修改列数。如果未指定 -L,cxref 缺省为五列。
不输出本地变量。仅输出全局和文件范围统计信息。
将输出定向到 file。
在交叉引用列表中包括引用的函数。
无提示操作;不输出输入文件名。
将列表格式设置为 80 列宽。
在标准错误中输出版本信息。
更改所有字段的缺省宽度。您必须为全部四列提供一个值。缺省宽度为:
Field Characters NAME 15 FILE 13 FUNCTION 15 LINE 20 (4 per column)
将输出格式设置为不宽于 num(十进制)列。如果未指定 -w 或者如果 num 小于 51,则宽度缺省为 80 列。
 
a.c
1    main()
2    {
3         int i;
4         extern char c;
5
6         i=65;
7         c=(char)i;
8    }
Resulting cross-reference table:
NAME    FILE          FUNCTION    LINE
c       a.c           ---         4-      7=
i       a.c           main        3*      6=   7
main    a.c           ---         2*
cxref 会将临时文件写入此环境变量设置的目录。如果未设置 TMPDIR,cxref 将使用 /var/tmp [请参见 tmpnam(3S) 中的 tempnam]。
临时文件
临时文件
cc (1) 、 lint (1)
错误消息通常意味着无法编译文件。