ホームページ > バックエンド開発 > C++ > C プログラミングにおいて、静的メモリ割り当てとは何を意味しますか?

C プログラミングにおいて、静的メモリ割り当てとは何を意味しますか?

王林
リリース: 2023-09-14 15:21:01
転載
1031 人が閲覧しました

メモリは次の 2 つの方法で割り当てられます。

C プログラミングにおいて、静的メモリ割り当てとは何を意味しますか?

静的メモリ割り当て

静的変数は、固定サイズの割り当てられたスペース ブロックで定義されます。 。一度割り当てられると解放することはできません。

プログラム内で宣言された変数にメモリを割り当てます。

  • 「&」演算子を使用してアドレスを取得し、それをポインターに割り当てることができます。

  • メモリはコンパイル時に割り当てられます。

  • スタックを使用してメモリの静的割り当てを維持します。

  • この種の割り当てでは、メモリが割り当てられると、メモリ サイズを変更できません。

  • #効率が低い。

変数の最終的なサイズは、プログラムの実行前に決定されます。これは静的メモリ割り当てと呼ばれます。コンパイル時のメモリ割り当てとも呼ばれます。

コンパイル時に割り当てられた変数のサイズを変更することはできません。

例 1

静的メモリ割り当ては通常、配列に使用されます。配列を例としてサンプル プログラムを実行してみましょう。

デモ

#include<stdio.h>
main (){
   int a[5] = {10,20,30,40,50};
   int i;
   printf (&ldquo;Elements of the array are&rdquo;);
   for ( i=0; i<5; i++)
      printf (&ldquo;%d, a[i]);
}
ログイン後にコピー

出力

Elements of the array are
1020304050
ログイン後にコピー

例 2

配列を計算する別の例を考えてみましょう。 −

リアルタイム デモンストレーション

#include<stdio.h>
void main(){
   //Declaring the array - run time//
   int array[5]={10,20,30,40,50};
   int i,sum=0,product=1;
   //Reading elements into the array//
   //For loop//
   for(i=0;i<5;i++){
      //Calculating sum and product, printing output//
      sum=sum+array[i];
      product=product*array[i];
   }
   //Displaying sum and product//
   printf("Sum of elements in the array is : %d</p><p>",sum);
   printf("Product of elements in the array is : %d</p><p>",product);
}
ログイン後にコピー

出力

Sum of elements in the array is : 150
Product of elements in the array is : 12000000
ログイン後にコピー
のすべての要素の合計と積

以上がC プログラミングにおいて、静的メモリ割り当てとは何を意味しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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