0

Cでアプリケーションをコーディングしています。画面の1つにカーソルがあります。カーソルが点滅し続ける必要があります。画面を更新し続ける無限のwhileループがあります。点滅の効果を得るには、このwhileループが5回繰り返されるたびに、カーソルが表示と非表示を交互に繰り返す必要があります。

どういうわけか反復のカウントを維持する必要があります。カウントを実行できるループの外側で変数を宣言できますが、カーソルの状態を更新する関数があり、ループの外側でこの変数を宣言しなくても処理する必要がwhileあるため、これはエレガントではないと感じています。drawCursor()while

このカウント整数を持たずにそれを行う方法はありますか?このカーソル点滅効果を実現するためのエレガントな方法は何ですか?

4

1 に答える 1

6

static関数内に変数を含めるだけです。

void drawCursor()
{
    static int counter;

    if ((counter++ % 5) == 0)
    {
        // toggle the cursor state 
    }

}
于 2012-11-26T12:21:11.947 に答える