最近碰到个问题!
void LED(void)
{
unsigned char i;
}
void LCD(void)
{
char i;
}
调用完LED后调用LCD,发现i的类型还是unsigned char 。计算不能得到负数,我很奇怪。函数内的变量不是调用完后就会释放的吗。搞不懂,是不是被keil编译器优化了?
------解决思路----------------------
unsigned char i; 这个i的作用域只在LED函数里面
char i;的作用域只在LCD里面
运行完LED之后i会被自动释放的。计算不能得到负数,应该不是这个引起的。可以查看一下i的内存地址
————————————————————————————————
我参加了 CSDN 2014 博客之星大赛,请大家多多支持,投票网址如下:
http://vote.blog.csdn.net/blogstar2014/details?username=woshi_ziyu#content