7.9.1.23.使用符号作为表达式¶
可以在“Watch”窗口中将符号名指定为表达式。如果一个符号是在 C 或 C++ 源文件中定义的(且目标文件包含符号调试信息),则该符号被视为表示指定地址处存储器内容的变量。
“Watch”窗口接受标准 C 表示法。若要查看符号的值,只需指定符号名称。在符号名称前面加一个 & 符号,显示符号在存储器中的位置的地址。
同样,指定符号名称以查看定义字符串的符号的值。“Watch”窗口显示字符串第一个字符的地址。展开表达式以查看数组中每个元素的内容。
符号调试信息
Code Composer Studio IDE 根据目标文件是否包含符号调试信息来对符号进行不同的处理。
默认情况下,在编译 C/C++ 源文件时指定符号调试信息 (-g)。按照“使用符号作为表达式”中描述的方式处理源文件中定义的符号。
如果没有符号调试信息,所有符号都被视为地址。
例如,在“Watch”窗口中使用符号名称来指定表达式时:
- 如果提供了符号调试信息,则“Watch”窗口中显示由符号名称(变量)表示的存储器位置处的值。
- 如果未提供符号调试信息,则“Watch”窗口只能指示某个地址存在标签。“Watch”窗口中显示符号的地址。要显示由符号表示的存储器位置处的值,必须在符号名称前面加上星号 (*)。
注意:对于支持多页的实际或模拟目标存储器配置(程序、数据和 I/O),您可以使用 @ 符号指定特定页面。在存储器地址之后,输入 @ 符号,后跟相应页面的关键字:
关键字 | 存储器类型 |
---|---|
编程 | 编程 |
数据 | 数据 |
IO | I/O |
数据字节 | 数据字节 |
___
示例:
*(int*)0x1000@prog
*(int*)0x1000@data
或者
Ox1000@DATA
Ox1000@IO
Ox1000@DATA_BYTE
Ox1000@PROG
这些表达式可在“Watch”窗口中使用,也可在可以使用 GEL 表达式的任何位置使用。
___
另请参阅: