C言語で静的な変数を定義するにはどうすればよいですか
C言語では、変数宣言の前にstaticキーワードを追加することで静的変数を定義できます。静的変数はプログラム実行中に値を保持し、定義された関数内でのみ参照できます。
静的変数は、関数内やグローバル変数の定義で利用できます。
static変数の定義は、関数の内部で次のようになります。
static <data_type> <variable_name> = <initial_value>;
例えば、
void myFunction() {
static int count = 0;
count++;
printf("Count: %d\n", count);
}
上記の例では、countは静的変数で、myFunction関数の内部で定義され、関数が呼び出される度に値を保持します。
グローバル変数の定義に static 変数を使用する構文は次のとおりです。
static <data_type> <variable_name> = <initial_value>;
たとえば:
#include <stdio.h>
static int count = 0;
void increment() {
count++;
printf("Count: %d\n", count);
}
int main() {
increment();
increment();
increment();
return 0;
}
上記例の count は、プログラムのあらゆる場所から参照可能なグローバル静的変数であり、increment 関数が呼び出されるたびにその値を保持します。