存储类链接内存管理

Posted 醉卧何处

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了存储类链接内存管理相关的知识,希望对你有一定的参考价值。

作用域:代码块作用域、函数原型作用域、文件作用域 函数作用域(只适用于goto)

链接:外部链接、内部链接、空链接(代码块作用域、函数原型作用域)

存储时期:静态存储时期、自动动态存储时期


五种存储类:自动,寄存器(代码块内使用register,不能使用地址运算符),外部链接的静态、内部链接的静态(static)、空链接

x =30;
while(x++<33)
{
int x = 100;
printf("%d",x);


}

打印了三次100,递增必须在条件判断语句中

 


对函数参量不能使用static,静态变量和外部变量在程序调入内存时已经就位

 


rand()、srand()函数可以产生随机数,在stdlib.h中
time.h中time()返回系统时间,返回值是time_t,确切类型与系统有关,可以自己对它进行类型指派

 

 

malloc() 和free()在stdlib.h中
变长数组在二维数组的分配上占优势:int n = 5;int m = 6; int ar[n][m];
int (*p)[6]或int (*p)[m]//支持变长数组; p = (int(*)[6])malloc(n*6*sizeof(int)); p = (int(*)[m])malloc(n*m*sizeof(int));

变长数组自动存储,自己释放

 

 

ANSI C类型限定词(幕等的:可以不止一次使用同一个限定词,多余的将被忽略):const、restrict(限定指向数据块的唯一访问方式--方便优化代码)

 

以上是关于存储类链接内存管理的主要内容,如果未能解决你的问题,请参考以下文章

C存储类链接和内存管理——存储类

C存储类链接和内存管理--动态分配内存及类型限定词

C语言:存储类链接和内存管理

存储类链接和内存管理(c prime plus)

第 12 章 存储类别链接和内存管理(存储类别)

操作系统——内存管理