3 回答

TA貢獻2051條經(jīng)驗 獲得超10個贊
一個函數(shù)返回一個值,而一個過程僅執(zhí)行命令。
名稱函數(shù)來自數(shù)學。用于基于輸入來計算值。
過程是可以按順序執(zhí)行的一組命令。
在大多數(shù)編程語言中,甚至函數(shù)也可以具有一組命令。因此,區(qū)別僅在于返回值部分。
但是,如果您希望保持函數(shù)整潔(只需看一下函數(shù)語言),就需要確保函數(shù)沒有副作用。

TA貢獻1804條經(jīng)驗 獲得超3個贊
這取決于上下文。
在類似Pascal的語言中,函數(shù)和過程是不同的實體,不同之處在于它們是否返回值。他們的行為不同。語言語法(例如,過程調(diào)用表單語句;您不能在表達式內(nèi)部使用過程調(diào)用,而函數(shù)調(diào)用則不能在表單語句中使用,您必須在其他語句中使用它們)。因此,帕斯卡(Pascal)的程序員可以區(qū)分這些。
在類似C的語言以及許多其他當代語言中,這種區(qū)別消失了。在靜態(tài)類型語言中,過程只是具有有趣返回類型的函數(shù)。這可能就是為什么它們可以互換使用的原因。
在函數(shù)式語言中,通常沒有諸如過程之類的東西-一切都是函數(shù)。

TA貢獻1854條經(jīng)驗 獲得超8個贊
在C中的示例:
// function
int square( int n ) {
return n * n;
}
// procedure
void display( int n ) {
printf( "The value is %d", n );
}
盡管您應(yīng)該注意,C標準不討論過程,僅涉及函數(shù)。
- 3 回答
- 0 關(guān)注
- 1111 瀏覽
添加回答
舉報