51单片机c语言的数组可以包含变量吗?

用keil软件编译的。错误代码:{程序.C(64): error C247: non-address/-constant initializer}
是数组里不能定义变量还是什么问题!
程序 uint8 Tab[ ]={fate,hour,min,sec};
最新回答
浮雁沉鱼

2024-09-05 02:07:38

你的理解有误,单片机数组不会自动改变数据,得用指令改变数据,如果你是存储数组地址是可以的,比如uint8 Tab[ ]={&fate,&hour,&min,&sec};用指针就可以操作。也不用存储动态数据,这样问题就简单了。
戏子人生。

2024-09-05 07:52:28

无语,括号里面是初值,不是字符,没有意义的!
朝朝暮暮

2024-09-05 08:05:25

这样的语法是支持的,不过不知道Keil支持的。
试试换个方式写呗,
uint8 Tab[4];

Tab[0] = fate;

这样
追问
还有个问题。WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
报错说第16行有变量没用到!
是不是void Time1(void) interrupt 3 using 0有问题?
追答
没有用到就删除这个变量呗,没用到你定义做什么。
追问

就这句啊