3传名 传名是一种宏替换,直接在调用处产生一个子程序副本,并且 用实际参数名替代形式参数名. 设主程序调用如下: d:=distence(a1,b1,a2,b2); 相当于在此处产生一段程序: d:=sqrt((a2-a1)**2+(b2-b1)**2); 六 存储分配 程序运行时,必须分配相应的存储空间. 这些空间包括: 变量空间,常量空间,临时空间,连接单元 等.有的空间在编译时就能确定其大小,而有的空间必须在程序运行时才能确定.根据这一特性,把空间分配分为两种: 静态存储分配 动态存储分配 1 静态存储分配 若在编译时能完全确定程序所需空间大小,并能确定每个数据项的地址,就可在编译时分配所需空间,这种分配方法称为静态存储分配. 若一个语言无递归调用,无可变数据项,则可静态地确定各数据项的空间大小和地址. Fortran语言满足这种定义. 2 动态存储分配 是指在程序运行时才能确定存储空间和地址的一种分配方法.适用于允许递归和可变数据项的语言,如pascal 和 c 语言. 一般采用堆栈动态地分配空间, 当调用子程序时,就在堆栈中为该子程序分配所需空间;而子程序运行结束
原创力文档

文档评论(0)