mask一下一直以来的一个误区
#include <stdio.h>
void key(void)
{
static unsigned char key_up =1;
printf("key_up = %d \n", key_up);
key_up = 0;
printf("key_up = %d \n", key_up);
}
int main(void)
{
key();
key();
return 0;
}
原以为会每次调子函数时,都会初始化静态局部变量。实际并非如此
#include <stdio.h>
void key(void)
{
//static unsigned char key_up =1;
unsigned char key_up =1;
printf("key_up = %d \n", key_up);
key_up = 0;
printf("key_up = %d \n", key_up);
}
int main(void)
{
key();
key();
return 0;
}