a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > Perl > 正文

Perl中的特殊內置變量詳細介紹

2020-06-04 20:32:18
字體:
來源:轉載
供稿:網(wǎng)友

內置變量 $_:

先來看一個例子:
代碼如下:
#!/usr/bin/perl -w
@array = qw(a b c d);
foreach (@array) {
 print $_," ";
}
例子的作用就是定義一個數(shù)組并把其中的元素打印出來,這里需要注意的是foreach循環(huán)部分,foreach循環(huán)的標準格式應該是:
代碼如下:foreach $element (@array){
 ......
}
其中數(shù)組@array將其中的元素依次賦值給$element,但是在上面那個程序中,我并沒有這樣做,在程序中,我就使用到了perl中內置的一個特殊變量 $_
在程序第五行中 foreach (@array) 實際上就是等于 foreach $_ (@array),在這里, $_是默認是輸入/輸出,因此,如果在程序中有類似的沒有明確聲明的變量位置的時候,就有可能能使用$_代替

內置變量 $$:

代碼如下:perl -e "sleep(5);  print qq (The PID of process perl.exe is : $$)";  
這是一句命令行上使用的perl程序,作用就是打印出一段話:print qq(The PID of process perl.exe is : $$) ,在這里,存在著特殊變量$$ ;
$$是當前perl解析器的進程ID(即,PID),大家可以將在段程序寫在命令行上,該程序會在perl解析器運行5秒后打印出perl解析器的進程ID,大家可以在程序運行期間通過查看進程列表來確定打印結果是否正確。

內置變量 $!:


接下來是一個用來返回錯誤信息(或是錯誤號)的特殊變量。
為了省事,不寫程序了,還是來個命令行的吧
代碼如下:perl -e "opendir FH,'c: one' or die qq (can't open:$!);";
這句話就是要打開C盤下的一個none目錄(而實際上我的C盤中并沒有此目錄,之所以這樣寫的目的就是為了引起一個程序中的錯誤信息),如果沒有打開的話,會執(zhí)行后面的die qq(can't open:$!)
在這里,$!就指明了錯誤信息的內容,命令行會返回錯誤信息:
代碼如下:can't open:No such file or directory at -e line 1.
$!在open或是opendir中用的比較多(無論是打開文件還是管道或是其他)。

來個例子,說一個有意思的特殊內置變量
代碼如下:$text = "C:/test.txt";
{
 open FH,$text or die "can't open:$!";
 my $line = ;
 close FH;
 print $line;
}
print "#===========================# ";
{
 undef $/;
 open FH,$text or die "can't open:$!";
 my $line = ;
 close FH;
 print $line;
}
=================================
C盤下的test.txt的內容是:
111111111111111111111111111
222222222222222222222222222
333333333333333333333333333
=================================
好,程序的運行結果是:
111111111111111111111111111
#===========================#
111111111111111111111111111
222222222222222222222222222
333333333333333333333333333

程序就不多廢話了,作用就是讀文件,關鍵部分在“$line = ”,尖括號操作符(即,<>)作用是讀取一行文件內容(相信大多數(shù)教程或是書上都是這么寫的),但是,這里所說的一行,實際上是有一個標準的,那就是當perl在遇到了換行符后,邊認為是一行,而換行符默認情況下是由于$/這個特殊變量定義的,是缺省值。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: baoyu133. con永久免费视频 | 亚洲国产精品久久久久久女王 | 色播视频在线观看 | 在线色网址 | 九色在线观看视频 | 日本一区二区在线看 | 操老逼 | 成年人在线观看 | 亚洲精品高清视频 | 一区二区三区在线播放 | 亚洲欧美精品一区 | 久久av免费观看 | 蜜桃久久av | 国产性在线 | 伊人操操| 成人超碰在线 | 国产一区成人 | 日韩av不卡在线 | 亚洲一区二区黄 | 久草网站| 三级黄色视频毛片 | 久久精品国产一区二区电影 | 精品久 | 精品国产一区二区三区成人影院 | 日本一区二区三区四区视频 | 韩国精品一区 | 中文字幕视频 | 亚洲精品乱码8久久久久久日本 | 亚洲色图偷拍自拍 | 97在线观看视频 | 欧美综合一区 | 中文字幕视频一区 | 骚鸭av| 电家庭影院午夜 | 国产日韩精品入口 | 99久久99久久精品国产片果冻 | www..99re| 国产精品久久久久久久一区探花 | 日韩在线欧美 | 九九亚洲 | 夜夜操天天操 |