打印

关于IAR环境下的 __no_init 关键字的问题

[复制链接]
2303|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
kokoromi|  楼主 | 2013-5-8 15:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ni, IAR, AI, ST, TE
我在一个c文件中用__no_init定义了一个数组,在对应的h文件里用extern声明,在main文件中包含了这个h文件,但是不能使用那个数组,总提示未定义,怎么回事? 三个文件的代码如下:
  
/********* main.c *********/

#include "a1.h"
void main()
{
  strx[0] = 0;
}

提示错误:

Error[e46]: Undefined external "strx" referred in main ( C:\Documents and Settings\xy\桌面\Debug\Obj\main.r43 )


/********* a1.h *********/

extern __no_init unsigned char strx[];



/********* a1.c *********/

#pragma location = 0x1c00
__no_init unsigned char strx[16];


相关帖子

沙发
kokoromi|  楼主 | 2013-5-9 08:21 | 只看该作者
本帖最后由 kokoromi 于 2013-5-9 08:27 编辑

没人知道吗?大侠们进来帮帮忙吧,多谢了~

@computer00 @chunyang  

使用特权

评论回复
板凳
computer00| | 2013-5-11 00:02 | 只看该作者
.h文件中不需要再加no init修饰了吧……

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

111

主题

344

帖子

3

粉丝