5 回答

TA貢獻1906條經驗 獲得超10個贊
函數定義好以后,要被其它函數調用了才能被執行。C 語言的函數是能相互調用的, 但在調用函數前,必須對函數的類型進行說明,就算是標準庫函數也不例外。標準庫函數的 說明會被按功能分別寫在不一樣的頭文件中,使用時只要在文件最前面用#include 預處理語 句引入相應的頭文件。如前面一直有使用的 printf 函數說明就是放在文件名為 stdio.h 的 頭文件中。調用就是指一個函數體中引用另一個已定義的函數來實現所需要的功能,這個時候函 數體稱為主調用函數,函數體中所引用的函數稱為被調用函數。一個函數體中能調用數個 其它的函數,這些被調用的函數同樣也能調用其它函數,也能嵌套調用。筆者本人認為 主函數只是相對于被調用函數而言。在 c51 語言中有一個函數是不能被其它函數所調用的, 它就是 main 主函數。調用函數的一般形式如下:
函數名 (實際參數表) “函數名”就是指被調用的函數。實際參數表能為零或多個參數,多個參數時要用逗
號隔開,每個參數的類型、位置應與函數定義時所的形式參數一一對應,它的作用就是把參 數傳到被調用函數中的形式參數,如果類型不對應就會產生一些錯誤。調用的函數是無參函 數時不寫參數,但不能省后面的括號。

TA貢獻1846條經驗 獲得超7個贊
調用如:select 函數名(參數列表)。
mysql中的UDF(自定義函數),可以寫好一些方法或 函數,然后進行調用,而且是在SQL語句中可以進行調用。
DROP FUNCTION CalculateAmount
CREATE FUNCTION CalculateAmount(userid INT) RETURNS float(10,2)
BEGIN
DECLARE totalCredits FLOAT;
SELECT SUM(amount) INTO totalAmount FROM credit_user WHERE id =userid;
RETURN totalAmount;
END
要注意的是,在UDF中,不要定義與數據表中重名的列。而在SQL中, 則可以像SELECT CalculateAmount(1);那樣去調用了。
- 5 回答
- 0 關注
- 1243 瀏覽
添加回答
舉報