2016-07-23 14 views
0

関数には、最初に初期化されたローカル変数があります。また、コード内でこの変数は、ランド()で生成された乱数値、で「満たされる」 それは動作しないとデバッガが私に伝えます:C:ランダム値デバッガエラーのある変数

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

'uint8_t random_color_value; 'これは初期化されておらず、どのコードが' .... 'であるのかわかりません。 –

+0

こんにちはEd、Ok、変数は設定されていますが、任意の値で初期化しても違いはありません。 コードの残りの部分は問題に重要ではありません。 – Creatronik

答えて

0

変数の初期化は、関数が呼び出されるたびに変数がインスタンス化されないように、グローバルに実行する必要がありました。

関連する問題