引入
在C中我们开辟内存空间有两种方式 :
1.静态开辟内存 :
int a;
int b[10];
特点:
所开辟的内存是在栈中开辟的固定大小的 ,如a是4字节 ,数组b是40字节 ,并且数组在申明时必须指定其长度...int n;
scanf("%d", &n);
int a[n];
这样编写会在编译时出错 , 编译器会提醒[ ]中应为常量表达式 , 在C中定义数组时可以用的有以下几种 ,例:
#define N 10...enum NUM{
M=10
};
int a1[N];
int a2[10];
int a3[M];
PS:
C中const int n =10 ; n并不能作为数组长度定义数组 , 但C++中则可以...2.动态开辟内存 :
在C中动态开辟空间需要用到三个函数 :
malloc(), calloc(), realloc() ,这三个函数都是向堆中申请的内存空间....如果ptr是空指针,则该函数不执行任何操作。