当前位置: 首页 > 文档资料 > Awk 中文教程 >

用户定义的函数( User Defined Functions)

优质
小牛编辑
122浏览
2023-12-01

函数是程序的基本构建块。 AWK允许我们定义自己的功能。 大型程序可以分为多个功能,每个功能可以独立编写/测试。 它提供了代码的可重用性。

以下是用户定义函数的一般格式 -

语法 (Syntax)

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

在此语法中, function_name是用户定义函数的名称。 函数名称应以字母开头,其余字符可以是数字,字母字符或下划线的任意组合。 AWK的保留字不能用作函数名。

函数可以接受以逗号分隔的多个参数。 参数不是强制性的。 您也可以创建一个没有任何参数的用户定义函数。

function body由一个或多个AWK语句组成。

让我们编写两个函数来计算最小和最大数,并从另一个名为main函数中调用这些函数。 functions.awk文件包含 -

例子 (Example)

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

执行此代码时,您将获得以下结果 -

输出 (Output)

Minimum = 10
Maximum = 20