您的位置:首页 > 其它

C程序引用LDF文件中定义的变量的方法

2008-07-15 15:16 513 查看
在ADI DSP开发中,LDF文件扮演了相当重要的角色,它定义了系统存储空间的划分方式和可执行程序在存储空间中的装载位置。

LDF文件还有一个重要的作用,就是在程序链接时定义变量,汇编语言和C语言都可以对这个变量进行引用。

如我们在LDF文件中定义程序执行的堆空间的大小和位置:

heap

{

// Allocate a heap for the application

ldf_heap_space = .;

ldf_heap_end = ldf_heap_space + MEMORY_SIZEOF(MEM_STD_HEAP) - 1;

ldf_heap_length = ldf_heap_end - ldf_heap_space;

_ldf_heap_space = ldf_heap_space;

_ldf_heap_length = ldf_heap_length + 1;

} >MEM_STD_HEAP

变量ldf_heap_space被赋予了堆空间的起始位置。如果我们在程序中能够引用ldf_heap_space,则我们就知道了堆空间从哪里开始。

引用方法如下:

extern int ldf_heap_space;

void * pHeapAddr = &ldf_heap_space;

这样,指针 pHeapAddr 就指向堆的起始地址。

注意,变量ldf_heap_space的地址才是所要引用的值。不要弄错了,:p。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐