コンピューターは今や私たちの生活の大きな部分を占めており、誰もが知っているように私たちを奴隷にしているため、日常的に役立ついくつかの詳細を知っておくことは決して悪いことではありません。
非常に技術的で深いトピックを掘り下げるには、変数の概念と、それらのタイプ (ローカルとグローバル) の違いを確認する必要があります。
主要な取り組み
- ローカル変数は特定の関数内に存在し、そのスコープとアクセシビリティをその関数のみに制限します。
- プログラム全体でグローバル変数にアクセスできるため、複数の関数間でデータを共有できます。
- ローカル変数を使用するとコードの可読性と保守性が向上しますが、潜在的な競合を避けるためにグローバル変数は慎重に使用する必要があります。
ローカル変数とグローバル変数
ローカル変数は関数内で定義され、その関数内でのみアクセスできます。 関数が実行されると消えます。 グローバル変数は関数の外で定義され、プログラム内の関数からアクセスできます
ローカル変数は一種の変数です。 関数内で宣言され、その有効期間は実行から終了までです。
そのスコープも、宣言されている関数内に制限されます。 初期化されていない場合、「ガベージ値」を格納できます。
一方、グローバル変数も変数の一種です。 関数の外で宣言されているのが特徴です。
でも作成されます プログラムの実行が開始されます。 ただし、プログラムの終了で終了します。 初期化されていない場合は、保存されます ゼロ デフォルトとして。
比較表
比較のパラメータ | ローカル変数 | グローバル変数 |
---|---|---|
データ共有 | ここでは、データにアクセスできる関数は XNUMX つしかないため、これは不可能です。 | 複数の機能がアクセスできるので、この機能は可能です |
値にアクセスするためのパラメーターの受け渡しは、最も重要です | プログラム全体で値にアクセスできるため、パラメーターの受け渡しは必ずしも必要ではありません。 | |
修正 | いずれかの関数で値が変更された場合、その変更は他の関数には反映されません。 | 関数の XNUMX つで値が変更された場合、その変更はプログラム全体に反映されます。 |
ユーザー補助 | これには、関数内に含まれるステートメントを介してアクセスできます。 | これには、プログラム内の任意のステートメントからアクセスできます。 |
Storage | これは、指定されていない限り、指定されていない場所に保管されます。 | これは指定された場所に保存されます。 |
ローカル変数とは
これは一種の変数です。 その特徴は、特定の関数内または関数内で宣言され、関数に組み込まれたステートメントによってのみその値にアクセスできることです。
その保存期間は、プログラムの実行が開始されたときに始まり、プログラムの終了で終わります。
もうXNUMXつの側面は、そのスコープも宣言されている関数内に制限されていることです。 初期化されていない場合、「ガベージ値」を格納できます。
このため、データを共有することはできません。これは、データにアクセスできる関数が XNUMX つしかないためです。 また、値にアクセスするためのパラメータの受け渡しは非常に重要です。
注意すべきもう XNUMX つの要因は、値が次のいずれかで変更された場合です。 機能の場合、そのような変更は他の関数には反映されません。
これには、関数内に含まれるステートメントを介してアクセスできます。
タスクの実行中も値が損なわれないことが保証されるなど、いくつかの利点があります。 各タスクがローカル変数を作成するため、結果は依然として予測可能です。
それらは関数の完了とともに削除されるため、以前に占有されていたメモリ空間が解放されます。
グローバル変数とは
これも一種の変数です。 関数の外で宣言されているのが特徴です。 プログラムの実行が開始される前でも作成されます。 ただし、プログラムの終了で終了します。
初期化されていない場合は、デフォルトとしてゼロが格納されます。 ここでは、複数の関数がアクセスできるため、データ共有が可能です。 この機能は可能です。
関数の外部で変数が宣言されているため、値にアクセスできるため、パラメーターの受け渡しは必ずしも必要ではありません。
いずれかの関数で値が変更された場合、その変更はプログラム全体に反映されます。 これには、プログラム内の任意のステートメントからアクセスできます。
プログラムのすべての機能からアクセスできるなど、特定の利点があります。 これは「定数」を格納する上で極めて重要であり、一貫性を維持するのに役立ちます。
これは、複数の関数が同じデータにアクセスする場合に最も役立ちます。 その欠点は、プログラムの実行までいくつかの変数がメモリに残ることであり、これが「メモリ不足」の問題につながる可能性があります。
さらに、関数によってデータが変更または変更される可能性があるため、結果が信頼できず、予測できない場合もあります。
ローカル変数とグローバル変数の主な違い
- ローカル変数は、その実行方法、つまり関数の内部にあることに基づいてその名前を取得しましたが、グローバル変数も、関数の外部にあるという事実からその名前を取得しました。
- ローカル変数の変数の寿命は、プログラムの実行で始まり、プログラムの終了で終わります。 対照的に、グローバル変数の変数の寿命は、プログラムの実行前から始まります。 しかし、それはその終了で終わります。
- ローカル変数は、指定されていない場合、未指定のスタックに格納されます。 一方、グローバル変数のストレージは固定された場所にあります。
- ローカル変数で生成された結果に変更の余地がない場合、グローバル変数の場合、任意の関数によってデータが変更または変更される可能性があるため、結果は信頼できず、予測不能になる可能性があります。
- ローカル変数の場合はデータ共有ができませんが、グローバル変数の場合はその逆です。
- https://onlinelibrary.wiley.com/doi/full/10.1111/cogs.12831
- https://www.sciencedirect.com/science/article/pii/S1878029615001905
最終更新日 : 11 年 2023 月 XNUMX 日
Sandeep Bhandari は、Thapar University (2006) でコンピューター工学の学士号を取得しています。 彼はテクノロジー分野で 20 年の経験があります。 彼は、データベース システム、コンピュータ ネットワーク、プログラミングなど、さまざまな技術分野に強い関心を持っています。 彼の詳細については、彼のウェブサイトで読むことができます バイオページ.
この投稿の内容は、ローカル変数とグローバル変数についての深い技術的な洞察を提供します。プログラミングの知識を深めたい人にとっては、非常に興味深い一冊です。
もちろんだよ、アスティーブンス。ここでのローカル変数とグローバル変数の説明は、啓発的で魅力的です。
ローカル変数とグローバル変数の微妙な違いを注意深く分析した、真に啓発的な記事です。これはプログラミング愛好家にとって素晴らしいガイドです。
作者が主題を深く理解していることがわかります。ローカル変数とグローバル変数間の比較の正確さと明確さにより、この投稿はプログラミング教育のための優れたリソースとなっています。
これ以上うまく言えなかったわ、ベイカー・バリー。ここでの複雑な概念の細心の注意を払った分解は、本当に賞賛に値します。
この投稿は明確かつ徹底的であり、ローカル変数とグローバル変数についての包括的な理解を提供します。プログラミングをさらに深く掘り下げる人にとっては最適なリソースです。
そうだね、トーマス・アーサー。この詳細な比較により、多くの人が恩恵を受けることができるプログラミングの重要な概念が明らかになります。
私はこれ以上同意できませんでした。これは、プログラミングとコーディングに興味がある人にとって素晴らしい読み物です。
この記事は、プログラミング愛好家にとっても専門家にとっても同様に貴重な情報源です。ローカル変数とグローバル変数の内訳は非常に詳細で分かりやすいものです。
私も同感です、フレッド・ヒューズ。これらの変数の徹底的な調査は、この分野における著者の専門知識の証拠です。
この投稿では、ローカル変数とグローバル変数の間の非常に詳細かつ包括的な比較を提供します。これは、プログラミング学習者にとっても専門家にとっても優れた教育リソースです。
私も心から同意します、Wprice。分析が徹底されているため、この部分はプログラミングにおける変数を理解するための模範的なリソースに昇格しています。
まさに、Wプライス。これはプログラミング文献への素晴らしい貢献です。
変数の概念とその型の違いについての深い洞察を提供する、非常に有益な記事です。これはコーディングとプログラミングの分野への貴重な貢献です。
ダニエル23さん、私もそう思います。ローカル変数とグローバル変数の説明が非常に丁寧で分かりやすいです。
この記事は印象的に包括的で、よく表現されています。ローカル変数とグローバル変数の内訳が、驚くほど明瞭かつ詳細に表示されます。
私もあなたの気持ちに同感です、グリチャードソン。これらの変数の徹底的な調査は、著者の専門知識の証です。