perl入門知識(3)

2021-09-07 11:14:45 字數 1266 閱讀 5248

引用

在很多場合下使用引用傳值,能在很大程度上提高**的執行效率。

定義乙個引用在變數名前加」\」就可以了,如:

$ra=\$a;

$rb=\@b;

$rc=\%c;

變數名前面依然是$。

而得到的引用是不能直接當做變數使用,需要解引用。解引用的方法是在變數名前加上變數原本型別所對應的符號。比如$rb是對乙個陣列的引用,那為了得到陣列,就可以使用@$rb來得到整個陣列。可以通過兩種方式訪問陣列中資料,一種是$$rb[1],另一種是使用「->」符號$rb->[1]。明顯第二種方式更加簡潔。對雜湊的操作類似$$rc,$rc->。

匿名儲存

匿名資料結構也是經常用到的,比如在useragent的post方法中會傳遞乙個匿名的hash表。

匿名陣列的建立不再是使用(),而是;同樣匿名hash使用{}建立,而不是()。

注意,它返回的是引用!

$ra=;

$ra->=3;

print $$ra;

特殊用法

$str = 'my name';

$strstr='your name';

echo "$str is hello"; //my namestr is hello

echo "$strstr is hello"; //your name is hello

echo "$strabc is hello"; // undefined variable: strabc in

{}的作用是限制變數名

sub函式(過程)

基本sub格式

sub subname  

&subname;   #呼叫加&

do my_sub(1, 2, 3); #另一種呼叫方式:do呼叫,等價於&my_sub(1, 2, 3);

基本的sub引數傳遞

實際是將引數@_賦值給區域性變數

sub引數的兩種表示方式:

整體形式(陣列形式)   @_   

單獨形式(陣列元素形式)  $_[ ]

#!/usr/bin/perl

&gotest("stringgogo",1,3,"4test");

sub gotest  

#!/usr/bin/perl

&gotest("stringgogo",1,3,"4test");

sub gotest

perl入門知識(3)

引用 在很多場合下使用引用傳值,能在很大程度上提高 的執行效率。定義乙個引用在變數名前加 就可以了,如 ra a rb b rc c 變數名前面依然是 而得到的引用是不能直接當做變數使用,需要解引用。解引用的方法是在變數名前加上變數原本型別所對應的符號。比如 rb是對乙個陣列的引用,那為了得到陣列,...

perl入門知識(2)

互動式程式設計 你可以在命令列中使用 e 選項來輸入語句來執行 例項如下 perl e print hello world n 輸入以上命令,回車後,輸出結果為 hello world 指令碼式程式設計 我們將以下 放到 hello.pl 檔案中 usr bin perl 輸出 hello,worl...

perl 入門知識(1)

一 語句及注釋 perl 語句以分號 結尾,用 作為一行的注釋,沒有其它語言中那種跨行的注釋。塊用大括號圍起來,這個和 c 類似,但這個大括號在有些地方是強制要求,如在 if for,do,while 等語句中,它不像其它語言一樣會用縮進來判斷塊。二 變數 標量 scalar 列表 list per...