什么是子程序?
2025-10-16 07:50:25174
什么是子程序?
compiler designprogramming languagescomputer programming更新于 2025/9/30 1:37:17
子程序是指一组可以在程序中多个位置方便地重复使用的语句。这种重复使用可以节省多种成本,包括内存空间和编码时间。这种重用也是一种抽象,因为子程序的分析计算是通过调用子程序的语句在程序中恢复的。
子程序的特点
子程序的特点如下 −
子程序只有一个入口点。
调用方在被调用子程序执行期间处于暂停状态。
当被调用子程序的执行结束时,控制权会反复返回给调用方。
子程序的类型
子程序有两种类型,如下 −
过程 − 过程定义为定义参数化计算的子程序。这些计算由单独的调用语句执行。过程代表新的语句。例如,由于 Pascal 没有排序语句,用户可以开发一个过程来对记录数组进行排序,并使用对该过程的调用来代替不可用的排序语句。
Pascal 中过程的一般语法如下
PROCEDURE Name of Procedure (formal parameter list); {local declaration section}
BEGIN
{instruction sequence}
END;
{end of procedure}
声明意味着过程由两部分组成:规范和主体。过程规范以关键字 PROCEDURE 开头,以过程名称或参数列表结尾。参数声明是可选的。不带参数的过程无需括号。
过程主体以关键字 BEGIN 开头,以关键字 END 结尾,后跟可选的过程名称。过程主体包含三个元素,即声明部分、可执行部分和可选的异常处理部分。
函数 − 函数是求值的子程序。函数和过程的结构相同,除了
函数在语义上以数学函数为模型。
函数有一个 RETURN 子句。
函数不会产生副作用,即它既不会改变其参数,也不会改变函数外部定义的任何变量。
C 语言中函数的一般语法如下
RETURN TYPE Name of Function (formal parameter list){
local declaration section
……………….
……………….
instruction sequence
}
函数包含两个元素:函数规范和函数体。函数规范以返回类型开头,后跟函数名称和参数列表。函数体以 { 开头,以 } 结尾。函数体包含三个部分,分别为声明部分、可执行部分和可选的异常处理部分。
相关文章
Convert the following LEX program into Lexical Analyzer.\AUXILIARY DEFINITIONS\ −\ −\ −\TRANSLATION RULES\ a{ }\ abb{ }\ a*b+
在编译器设计中,块结构化语言的实现是什么?
编译器设计中的语法制导翻译方案是什么?
什么是块结构?
什么是过程调用的堆栈分配?
简单堆栈分配方案的实现
什么是堆分配?
什么是堆栈分配?
什么是静态分配?
描述编程语言设计中影响存储管理的问题?
打印
下一节 ❯❮ 上一节