卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章20195本站已运行347

在C编程中,静态内存分配是什么意思?

<?xml encoding="utf-8" ?>

内存可以通过以下两种方式分配:

在C编程中,静态内存分配是什么意思?

静态内存分配

静态变量定义在一个分配的空间块中,大小固定。一旦分配,就不能释放。

程序中为声明的变量分配内存。

  • 可以使用“&”运算符获取地址并赋给指针。

  • 内存在编译时分配。

  • 它使用堆栈来维护内存的静态分配。

  • 在这种分配中,一旦分配了内存,内存大小就不能改变。

  • 效率较低。

变量的最终大小在程序运行之前确定,这被称为静态内存分配。也称为编译时内存分配。

我们无法更改在编译时分配的变量的大小。

示例1

静态内存分配通常用于数组。让我们以数组为例进行一个示例程序:

演示

#include<stdio.h>
main (){
   int a[5] = {10,20,30,40,50};
   int i;
   printf (“Elements of the array are”);
   for ( i=0; i<5; i++)
      printf (“%d, a[i]);
}

输出

Elements of the array are
1020304050

Example 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>",sum);
   printf("Product of elements in the array is : %d</p><p>",product);
}</p>

输出

Sum of elements in the array is : 150
Product of elements in the array is : 12000000
卓越飞翔博客
上一篇: C++程序来检查一个字符是否为字母或非字母
下一篇: 返回列表
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏