-3

静的変数はグローバル変数の代替ですか? いいえの場合は、C言語でのグローバル変数の代替は何ですか私はあなたの答えを楽しみにしています Thx u for Advance

4

1 に答える 1

0

static variableと呼ばれるものはありません。これは、static保存期間を持つ(ny)変数です。

グローバル変数 (ファイル スコープにある) にはstatic保存期間がありますが、ローカル スコープの変数にも保存期間がstaticあり、相互に排他的ではありません。したがって、そのような「代替」はありません。

保存期間のある変数についてstaticは、実行中ずっと値を保持するため、「グローバル」および「静的ローカル スコープ」(つまり何でも) が「代替手段」であると感じるかもしれません。抽象化の観点から言えば、他の翻訳単位から変数にアクセスする必要がない場合、変数をファイル スコープに入れる理由はありません。

ストレージを使用してローカル スコープの変数を使用staticすることは、目的にかなう場合は、変数をファイル スコープに配置するよりも優れたアプローチと見なされます。

于 2017-04-11T06:50:00.870 に答える