如何通过IAR IDE Watch窗口中的指针显示数组范围?

时间:2014-09-23 19:28:54

标签: c debugging embedded watch iar

在IAR Embedded Workbench中,我有一个指针指向内存中的缓冲区。观看指针时,我可以看到它指向的单词的内容。如何判断Watch视图是否从指针开始列出一段缓冲区,用于指定长度的元素?

例如,输入表达式:

myPtr[0..2]

将显示相当于三个表达式的信息:

myPtr[0]
myPtr[1]
myPtr[2]

2 个答案:

答案 0 :(得分:3)

另一种方法是在内存中查看它。选择查看 - >内存并输入指针值(带有0x前缀)。您可以查看和编辑数据范围。也许不像"清洁"作为传统的调试器变量查看器,但它完成了这项工作。

答案 1 :(得分:2)

来自Iar Embedded Workbench(9.20)帮助:

  

在可以编辑“表达式”字段的窗口中以及“快速”中   观察窗口,您可以指定要显示的元素数量   在字段中添加一个分号后跟一个整数。对于   例如,仅显示名为的数组的三个第一个元素   myArray,或从元素开始按顺序排列的三个元素   指针指向,写:

myArray;3
     

显示myPtrmyPtr+1myPtr+2指向的三个元素   myPtr;3 ,写道:

myArray;5,10
     

(可选)添加逗号和另一个指定哪个的整数   元素开始。例如,要显示元素10-14,请写:

myPtr+10
     

要显示myPtr+11myPtr+12myPtr+13myPtr+14和   myPtr;5,10 ,写道:

sql_query = SELECT id, firstname, IF(lastname='','_NONE',lastname) as lastname FROM ...