C++ 関数のローカル変数とグローバル変数の違いは何ですか?

WBOY
リリース: 2024-04-19 15:42:01
オリジナル
382 人が閲覧しました

C ローカル変数とグローバル変数の違い: 可視性: ローカル変数は定義関数に限定されますが、グローバル変数はプログラム全体で参照できます。メモリ割り当て: ローカル変数はスタックに割り当てられ、グローバル変数はグローバル データ領域に割り当てられます。スコープ: ローカル変数は関数内にあり、グローバル変数はプログラム全体にあります。初期化: ローカル変数は関数の呼び出し時に初期化され、グローバル変数はプログラムの開始時に初期化されます。再作成: ローカル変数は関数呼び出しごとに再作成されますが、グローバル変数はプログラムの開始時にのみ作成されます。

C++ 函数的局部变量和全局变量有什么区别?

C 関数のローカル変数とグローバル変数: 大きな違い

C では、ローカル変数とグローバル変数の間に重要な違いがあります。これらの違いを理解してください。効率的で保守可能なコードを作成するために重要です。

ローカル変数

  • は関数内で定義され、関数スコープ内でのみ表示されます。
  • 関数が呼び出されたときに作成され、関数が返されたときに破棄されます。
  • ローカル変数は、関数が呼び出されるたびに再作成されます。

サンプル コード:

void myFunction() {
    int localVariable = 5; // 局部变量
    // ... 使用 localVariable
}

int main() {
    myFunction();
    // localVariable 无法访问,因为它不在 main() 函数的范围内
}
ログイン後にコピー

グローバル変数

  • は関数の外部で定義され、プログラム全体で参照できます。
  • プログラムの開始時に作成され、プログラムの終了時に破棄されます。
  • グローバル変数は、プログラム内のすべての関数に表示されます。

サンプルコード:

int globalVariable = 10; // 全局变量

void myFunction() {
    // ... 使用 globalVariable
}

int main() {
    // ... 使用 globalVariable
}
ログイン後にコピー

違い

#プログラム実行中##メモリ割り当て#スコープ#プログラム全体内初期化#関数の呼び出し時再作成関数が呼び出されるたび #プログラムの開始時のみ #ローカル変数の例 次の例では、ローカル変数 name は
特徴ローカル変数グローバル変数
可視性変数が定義されている関数に限定されますプログラム全体
ライフサイクル関数呼び出し中
スタック上 #グローバル データ領域内
関数内
#プログラムの開始時
#実際のケース
greet()

関数内でのみ使用され、関数が呼び出されるたびに再作成されます。グローバル変数の数

次の例では、グローバル変数

g_count

がプログラム全体で表示され、関数が呼び出されるたびに更新されます:

void greet(std::string name) {
    std::cout << "Hello, " << name << "!" << std::endl;
}

int main() {
    greet("John");
    greet("Mary"); // 局部变量 name 将重新创建
}
ログイン後にコピー

以上がC++ 関数のローカル変数とグローバル変数の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート