IAR 选项解释
IAR Embedded Workbench 中的右键菜单,主要用于查看 C/C++ 函数或变量 的相关信息。具体选项如下:
-
Go to Definition of ‘CpxCheckAlarm’
→ 跳转到定义(实现):- 代码中 实际实现(定义) 该函数的地方。
- 例如:
void CpxCheckAlarm() { // 函数实现 }
-
Go to Declaration of ‘CpxCheckAlarm’
→ 跳转到声明(声明而非实现):- 通常是 头文件(
.h
)中的 声明。 - 例如:
void CpxCheckAlarm(); // 仅声明,无实现
- 通常是 头文件(
-
Find All References to ‘CpxCheckAlarm’
→ 查找所有引用:- 在整个工程中,搜索 CpxCheckAlarm 这个标识符的所有引用(包括调用、定义、声明等)。
-
Find All Calls to ‘CpxCheckAlarm’
→ 查找所有调用:- 仅查找 哪里调用 了
CpxCheckAlarm()
(只搜索函数调用,不包括定义或声明)。 - 例如:
void Test() { CpxCheckAlarm(); // 这是一次调用 }
- 仅查找 哪里调用 了
-
Find All Calls from ‘CpxCheckAlarm’
→ 查找CpxCheckAlarm()
内部调用的函数:- 也就是查看
CpxCheckAlarm()
里面 调用了哪些其他函数。 - 例如:
void CpxCheckAlarm() { LogError(); // 这里调用了 LogError() }
- 这个选项会列出
LogError()
这样的函数。
- 也就是查看
声明(Declaration) vs 定义(Definition)
概念 | 描述 | 示例 |
---|---|---|
声明 (Declaration) | 仅声明函数或变量的存在,不会分配内存。通常在头文件 .h 中 | void CpxCheckAlarm(); |
定义 (Definition) | 提供具体实现,会分配内存或写出函数体。通常在 .c 文件 | void CpxCheckAlarm() { // 代码 } |
简单理解
- 声明 = “这个函数/变量存在,但我不告诉你细节”
- 定义 = “这里是完整的实现,包含代码”
调用(Call) vs 引用(Reference)
概念 | 描述 | 示例 |
---|---|---|
调用 (Call) | 代码执行一个函数 | CpxCheckAlarm(); |
引用 (Reference) | 代码使用一个变量、函数或对象,但不一定调用 | extern int alarm; (引用 alarm 变量) |
简单理解
- 调用:实际执行(
CpxCheckAlarm();
) - 引用:只是在代码中提到(
extern int alarm;
)
小结
- 找函数的具体实现 → 选择 “Go to Definition”
- 找函数的声明(通常在头文件) → 选择 “Go to Declaration”
- 查找所有使用该函数的地方 → 选择 “Find All References”
- 查找哪些代码调用了该函数 → 选择 “Find All Calls to”
- 查找该函数调用了哪些其他函数 → 选择 “Find All Calls from”