子程序
外观
![本页使用了标题或全文手工转换](http://upload.wikimedia.org/wikipedia/commons/thumb/c/cd/Zh_conversion_icon_m.svg/35px-Zh_conversion_icon_m.svg.png)
“子程序”的各地常用名称 | |
---|---|
中国大陆 | 子程序、子例程 |
台湾 | 子程式、副程式、次程式、次常式 |
在电脑科学中,子程序(德语:unterprogramm,英语:subroutine, subprogram, callable unit),是一个大型程序中的某部分代码,由一个或多个语句块组成。它负责完成某项特定任务,而且相较于其他代码,具备相对的独立性。
一般会有输入参数并有返回值,提供对过程的封装和细节的隐藏。这些代码通常被集成为软件库。
函数在面向过程的语言中已经出现。是结构(struct)和类(class)的前身。本身就是对具有相关性语句的归类和对某过程的抽象。
分类
[编辑]子程序是一个概括性的术语,子程序是所有高阶程序所称。它经常被使用在汇编语言层级上。子程序的主体(body)是一个代码区块,当它被调用时就会进入执行。
函数
[编辑]“函数”的各地常用名称 | |
---|---|
中国大陆 | 函数 |
台湾 | 函式、函数 |
港澳 | 函数 |
函数(function)是一种子程序,利用函数名称,可以接收回传值。例如:
c = max(a,b);
过程
[编辑]“过程”的各地常用名称 | |
---|---|
中国大陆 | 过程 |
台湾 | 程序 |
港澳 | 程式 |
过程(procedure)是一种子程序,它能够接受不同的引数,来执行某些特别的动作。例如:
printf("Hello World\n");
函数与过程在某些编程语言中是被分开的,但是在C语言中,所有过程都是函数,这两者被认为是相同的。这有可能造成一些副作用,特别是在回传值是void
类型时。