我想定义一个数组,并且数组的首地址是我自己指定的,用的是c语言,平台式c6678。不知道有没有这样的用法。指针是可以定义一个固定的地址,但是对该地址后面数据写的时候可能会覆盖其他有用的数据。
Allen35065:
只有全局数组可以分配到指定的地址,可以在.cmd文件里指定MEMORY和SECTION
比如
MEMORY
{
….
USER: o = 0x10800000 l = 0x00000400
}
SECTIONS
{
.user_array > USER
}
然后定义数组之前
#pragma DATA_SECTION(a, ".user_array")
int a[256];
则数组a是从0x10800000开始的数组,注意.cmd里定义数据段一般不要和其它段重叠。