AWK - 使用者定義函式



函式是一個程式的基本構建塊。AWK 允許我們定義自己的函式。一個大型程式可以劃分為函式,每個函式可以獨立編寫/測試。它提供了程式碼的可重用性。

下面是使用者定義函式的通用格式 -

語法

function function_name(argument1, argument2, ...) { 
   function body
}

在此語法中,function_name 是使用者定義函式的名稱。函式名應以字母開頭,其餘字元可以是數字、字母或下劃線的任意組合。AWK 的保留字不能用作函式名。

函式可以接受多個用逗號分隔的引數。引數不是強制性的。您還可以建立沒有引數的使用者定義函式。

函式主體由一個或多個 AWK 語句組成。

讓我們編寫兩個函式來計算最小值和最大值,並從另一個名為 main 的函式中呼叫這些函式。functions.awk 檔案包含 -

示例

# Returns minimum number
function find_min(num1, num2){
   if (num1 < num2)
   return num1
   return num2
}
# Returns maximum number
function find_max(num1, num2){
   if (num1 > num2)
   return num1
   return num2
}
# Main function
function main(num1, num2){
   # Find minimum number
   result = find_min(10, 20)
   print "Minimum =", result
  
   # Find maximum number
   result = find_max(10, 20)
   print "Maximum =", result
}
# Script execution starts here
BEGIN {
   main(10, 20)
}

執行此程式碼後,您將獲得以下結果 -

輸出

Minimum = 10
Maximum = 20
廣告