Subprogramas en AWK
AWK tiene diferentes funciones para tratar con números, con cadenas de texto, con la entrada y salida de datos, tiempo, manipulación de bits, arrays, para proveer información sobre tipos y para localización e internacionalización.
Existe además la capacidad de que el usuario defina funciones. La definición de funciones debe seguir la siguiente sintaxis:
function <name>(<parametros>)
{
acciones
return <resultado>
}
Es importante notar las siguientes cosas:
- Es bueno poner el argumento return, en lugar de print, a menos que sea una función para arreglar formatos.
- Aunque
function
se puede abreviar afunc
el estándar POSIX no reconoce esta abreviatura - Un nombre válido es único, no inicia con dígitos, y usa caracteres válidos
en ASCII - Los parámetros pueden ser una lista separada por comas, o estar vacía
- No puede haber dos parámetros con el mismo nombre.
- Las variables locales enmascaran a las variables globales del mismo nombre, así que es preferible usar nombres de argumentos únicos dentro de la función
- No debe haber separaciones entre el nombre de la funcieon y los paréntesis con los argumentos
- Las variables escalares se pasan por valor y los arrays por referencia.
Ejemplo de sintaxis de una función
function cube(arg)
{
# Funcion que eleva un número al cubo
result = arg^3
return result
}