ホームページ  >  記事  >  バックエンド開発  >  静的変数と動的変数

静的変数と動的変数

angryTom
angryTomオリジナル
2019-10-24 09:17:004571ブラウズ

静的変数と動的変数

#静的変数と動的変数

静的変数

は、定義時に

static で変更される変数です。

static TYPE var_name = init_value;

動的変数の形式で、# の形式になります。 ##

TYPE var_name = init_value;

つまり、静的な変更はありません。 =init_valueは省略可能です。

関数の外で定義されたグローバル変数と関数内のローカル変数、

scope

lifecycle、および明示的な初期化がない場合の を区別します。 初期値### 異なります。 1 動的グローバル変数:

スコープはプロジェクト全体です。つまり、動的グローバル変数は、最終的に実行可能ファイルにコンパイルされるすべてのファイルで使用できます。

ライフサイクルは、プログラムの実行からプログラムの終了まで、つまり実行時間全体です。

明示的な初期化がない場合、デフォルトの初期化値は 0 です。

2 静的グローバル変数:

スコープは現在のファイルであり、定義/宣言位置からファイルの終わりまでです。

ライフサイクルは、プログラムの実行からプログラムの終了まで、つまり実行時間全体です。

明示的な初期化がない場合、デフォルトの初期化値は 0 です。

3 動的ローカル変数:

スコープは、現在の関数の定義位置から、関数が配置されている {} の終了位置までです。

ライフサイクルは、関数呼び出しから関数終了までです。

明示的な初期化がない場合、デフォルトの初期化値はランダムな値になります。

4 静的ローカル変数:

スコープは現在の関数であり、定義位置から関数が配置されている {} の終了位置までです。

ライフ サイクルは、プログラムの実行からプログラムの終了まで、つまり実行時間全体です。次の関数が呼び出されるとき、静的ローカル変数は再び初期化されず、その値が使用されます。最後の関数が終了したとき。

明示的な初期化がない場合、デフォルトの初期化値は 0 です。

おすすめコース:
C言語チュートリアル

以上が静的変数と動的変数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:C言語定義関数次の記事:C言語定義関数