c语言 常量 指定地址,指定常量、变量、函数在存储空间的地址

本文介绍了如何在C语言中通过IAR环境指定常量、变量和函数的存储地址,包括使用@符号指定绝对地址、通过段名分配和通过.o或.a文件集中编译。同时,还讲述了如何将函数运行在RAM中的方法。
摘要由CSDN通过智能技术生成

194688299_1_20200706075441646

编者悟语:减少产生心理落差的可能,你的内心就会越平静,进而会越纯净。

我们有时为了程序效率或达到取用某特定地址上资源等目的,会将常量、变量、函数存放到指定的存储空间内,这时我们就会涉及一个如何达到这个目的的问题。不同IDE实现方式可能是不同的,但是是类似的,可以参考借鉴,下面我以IAR为环境背景介绍一下相关的内容。

1 指定常量的存放地址

1)将常量存放到指定的绝对地址上

将常量YourConstVar放到0x80000000地址处,常量值为0x66888866

const int YourConstVar @ 0x80000000 =

0x66888866;

2)将常量存放到指定段

将常量YourConstVar放到段.yourconstvarname上,常量值为0x66888866

const int YourConstVar @”.yourconstvarname” = 0x66888866;

等价方式:

#pragma location = “.yourconstvarname”

const int YourConstVar = 0x66888866;

place … {section .yourconstvarname};

3)将多个常量集中在一个源文件中并编译生成.o目标文件或.a库文件

place … {sectio

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值