IAR定位函数内容时报错“包含错误的路径”

IAR版本:7.12.1
报错:包含错误的路径XXXXX

我经常使用github在多台电脑写代码,每次下载完更新过的代码,定位函数就提示路径错误。这个问题应该是不同电脑上项目的存储路径不同导致的。
以下方法有概率可以解决问题,但也可能时其它原因导致的(比如头文件路径设置错了,移动了等)。因为又成功了一次,这里记录一下,报错截图下次补。

报错解决方案:
点击Project——Clean。
IAR报错包含错误路径的解决方法

重新右击“函数名”,选择【Go to Definition of …】 一般就能自动定位到函数具体内容的位置。
IAR定位函数所在位置
定位成功。
在这里插入图片描述

  • 12
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
IAR是一种嵌入式开发工具,包含IAR Embedded Workbench集成开发环境和IAR C/C++编译器。在开发嵌入式系统,我们经常会遇到对函数进行绝对定位的需求。 绝对定位是指将函数或变量放置在指定的内存地址上,而不是由编译器自动分配地址。这在某些特定的应用场景下非常有用,例如嵌入式系统中的中断程序或需要与硬件直接交互的驱动程序。 使用IAR进行函数的绝对定位,需要在函数定义前加上特定的关键字或修饰符。在IAR Embedded Workbench中,可以使用`#pragma location`来指定函数的地址。 例如,假设我们需要将一个名为`myFunction`的函数放置在0x8000地址处。我们可以这样定义函数: ``` #pragma location=0x8000 void myFunction(void) { // 函数的具体实现 } ``` 上述代码会告诉编译器将`myFunction`函数放置在0x8000地址处。当生成二进制文件IAR C/C++编译器会根据指定的地址进行函数的布局。 需要注意的是,使用绝对定位可能会导致代码的可移植性下降,因为函数的地址依赖于指定的内存布局,不同的硬件平台或编译器可能具有不同的地址分配方案。因此,在使用绝对定位应谨慎考虑兼容性和可移植性的问题。 总结来说,IAR可以通过使用`#pragma location`来对函数进行绝对定位,指定函数在内存中的具体地址。这在某些特定的应用场景下非常有用,但需要注意兼容性和可移植性的问题。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值