在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Linux/ 用戶自定義函數(shù)
循環(huán)  
操作符  
優(yōu)雅地輸出
用戶自定義函數(shù)
正則表達式
基本示例
內(nèi)置函數(shù)
工作流程
概述
控制流  
數(shù)組  
輸出重定向
基本語法
運行環(huán)境
內(nèi)置變量

用戶自定義函數(shù)

函數(shù)是程序的基本構(gòu)造部分。AWK 允許我們自定義函數(shù)。事實上,大部分的程序功能都可以被切分成多個函數(shù),這樣每個函數(shù)可以獨立的編寫與測試。函數(shù)不僅提高了代碼的復(fù)用度也提高代碼的魯棒性。

下面是用戶自定義函數(shù)的一般形式:

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

上述定義函數(shù)的語法中:

function_name 是用戶自定義函數(shù)的名稱。函數(shù)名稱應(yīng)該以字母開頭,其后可以是數(shù)字、字母或下劃線的自由組合。AWK 保留的關(guān)鍵字不能作為用戶自定義函數(shù)的名稱。

自定義函數(shù)可以接受多個輸入?yún)?shù),這些參數(shù)之間通過逗號分隔。參數(shù)并不是必須的。我們也可以定義沒有任何輸入?yún)?shù)的函數(shù)。

function body 是函數(shù)體部分,它包含 AWK 程序代碼。

下面我們實現(xiàn)了兩個簡單函數(shù),它們分別返回兩個數(shù)值中的最小值和最大值。我們在主函數(shù) main 中調(diào)用了這兩個函數(shù)。 文件 functions.awk 內(nèi)容如下:


\# 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)
}  

執(zhí)行上面的命令可以得到如下的結(jié)果:

Minimum = 10
Maximum = 20
上一篇:工作流程下一篇:優(yōu)雅地輸出