一般而言,我们都听说过编程语言中的功能或过程。但是,我发现我几乎可以互换使用这些术语(这可能是非常错误的)。所以,我的问题是:在功能,目的和用途方面有什么区别?一个例子将不胜感激。
3 回答
侃侃无极
TA贡献2051条经验 获得超10个赞
一个函数返回一个值,而一个过程仅执行命令。
名称函数来自数学。用于基于输入来计算值。
过程是可以按顺序执行的一组命令。
在大多数编程语言中,甚至函数也可以具有一组命令。因此,区别仅在于返回值部分。
但是,如果您希望保持函数整洁(只需看一下函数语言),就需要确保函数没有副作用。
狐的传说
TA贡献1804条经验 获得超3个赞
这取决于上下文。
在类似Pascal的语言中,函数和过程是不同的实体,不同之处在于它们是否返回值。他们的行为不同。语言语法(例如,过程调用表单语句;您不能在表达式内部使用过程调用,而函数调用则不能在表单语句中使用,您必须在其他语句中使用它们)。因此,帕斯卡(Pascal)的程序员可以区分这些。
在类似C的语言以及许多其他当代语言中,这种区别消失了。在静态类型语言中,过程只是具有有趣返回类型的函数。这可能就是为什么它们可以互换使用的原因。
在函数式语言中,通常没有诸如过程之类的东西-一切都是函数。
哔哔one
TA贡献1854条经验 获得超8个赞
在C中的示例:
// function
int square( int n ) {
return n * n;
}
// procedure
void display( int n ) {
printf( "The value is %d", n );
}
尽管您应该注意,C标准不讨论过程,仅涉及函数。
- 3 回答
- 0 关注
- 985 浏览
添加回答
举报
0/150
提交
取消