変数の使い方の問題には、例えば「XXXtemp」のような名前の一時変数がグローバル領域におかれていることが挙げられる。こういったグローバル変数の何が一時的かと言うと、関数の間で値を受け渡すのに「一時的に」使用されている。たとえばこんな感じに使われている。
uint32 XXXtermp; //func1 と func2 以外では使用されない void func1(uint8 a) { XXXtemp = a; func2(); } void func2(void) { if (XXXtemp > 0) { ... } }
こういった変数は、実際の使われ方によって次の2つのいずれかの方法で修正するべきだろう。
- 変数が関数間で値を渡しているだけなら、関数の引数にする。
- 変数の値を長期間保持する必要があるなら、適切な名前に変更する。
細かいことかも知れないけど、いわゆる「名前重要」ってことで。