在函数中,我有一个在开头初始化的局部变量。此外,在代码中,此变量被“填充”随机值,由rand()生成 它不起作用,调试器告诉我:
random_color_value Failed getting location list for symbol die# 0x4b9 Error
这是代码的片段:
#include <stdlib.h>
.
.
.
struct cRGB colorFade(void){
uint8_t random_color_value;
.
.
.
srand(2);
random_color_value = rand() % 12 +1; // generate random value between 1 and 12 (including 12)
.
.
.
}
我的AVR-Studio中的编译器设置为针对大小进行优化。 什么可能导致这个问题?
答案 0 :(得分:0)
变量的初始化必须全局完成,以避免每次调用函数时实例化变量。