Perl學(xué)習(xí)筆記----Perl函數(shù)
本文和大家重點(diǎn)討論一下Perl函數(shù)的概念,主要包括聲明和調(diào)用,局部變量和預(yù)定義的子程序等內(nèi)容,相信通過(guò)本文的簡(jiǎn)單介紹你對(duì)Perl函數(shù)的概念一定會(huì)有初步的了解。
Perl函數(shù)
Perl中的Perl函數(shù)基本上跟C語(yǔ)言中相同,只是在聲明和調(diào)用方式有些差別,沒(méi)有C語(yǔ)言那么嚴(yán)格。
一、Perl函數(shù)的聲明和調(diào)用
聲明subfunction_name{}
調(diào)用dofunction_name
&function_name如果先聲明則不用&
二、Perl函數(shù)中的局部變量
my$a
my($a,$b)
local($a)
其區(qū)別是:my定義的變量只在該子程序中存在;而local定義的變量不存在于子程序中,但存在于該子程序和該子程序調(diào)用的子程序中
三、Perl函數(shù)中預(yù)定義的子程序
Perl5預(yù)定義了三個(gè)子程序,分別在特定的時(shí)間執(zhí)行,它們是:BEGIN子程序在程序啟動(dòng)時(shí)被調(diào)用;END子程序在程序結(jié)束時(shí)被調(diào)用;AUTOLOAD子程序在找不到某個(gè)子程序時(shí)被調(diào)用。你可以自己定義它們,以在特定時(shí)間執(zhí)行所需要的動(dòng)作。如:
- BEGIN{
- print("Hi!WelcometoPerl!\n");
- }
- AUTOLOAD{
- print("subroutine$AUTOLOADnotfound\n");#變量$AUTOLOAD即未找到的子程序名
- print("argumentspassed:@_\n");
- }
若同一個(gè)預(yù)定義子程序定義了多個(gè),則BEGIN順序執(zhí)行,END逆序執(zhí)行
本文來(lái)自CSDN博客,轉(zhuǎn)載請(qǐng)標(biāo)明出處:http://blog.csdn.net/yc0188/archive/2007/05/28/1628121.aspx
【編輯推薦】