基本上,簡單變量就是一個數據單元,這個單元可以是數字或字符串。
一、整型
1、整型
??PERL最常用的簡單變量,由于其與其它語言基本相同,不再贅述。
?? 例:
?? $x = 12345;
?? if (1217 + 116 == 1333) {
?? # statement block goes here
?? }
??整型的限制:
?? PERL實際上把整數存在你的計算機中的浮點寄存器中,所以實際上被當作浮點數看待。在多數計算機中,浮點寄存器可以存貯約16位數字,長于此的被丟棄。整數實為浮點數的特例。
2、8進制和16進制數
? 8進制以0打頭,16進制以0x打頭。
? 例:$var1 = 047; (等于十進制的39)
? $var2 = 0x1f; (等于十進制的31)
二、浮點數
? 如 11.4 、 -0.3 、.3 、 3. 、 54.1e+02 、 5.41e03
? 浮點寄存器通常不能精確地存貯浮點數,從而產生誤差,在運算和比較中要特別注意。指數的范圍通常為-309到+308。
? 例:
? #!/usr/local/bin/perl.html" target="_blank">perl
? $value = 9.01e+21 + 0.01 - 9.01e+21;
? print ("first value is ", $value, "/n");
? $value = 9.01e+21 - 9.01e+21 + 0.01;
? print ("second value is ", $value, "/n");
? ---------------------------------------------------------
? $ program3_3
? first value is 0
? second value is 0.01
三、字符串
? 慣用C的程序員要注意,在PERL中,字符串的末尾并不含有隱含的NULL字符,NULL字符可以出現在串的任何位置。
. 雙引號內的字符串中支持簡單變量替換,例如:
? $number = 11;
? $text = "This text contains the number $number.";
? 則$text的內容為:"This text contains the number 11."
.雙引號內的字符串中支持轉義字符
Table 3.1. Escape sequences in strings.
Escape Sequence | Description |
/a | Bell (beep) |
/b | Backspace |
/cn | The Ctrl+n character |
/e | Escape |
/E | Ends the effect of /L, /U or /Q |
/f | Form feed |
/l | Forces the next letter into lowercase |
/L | All following letters are lowercase |
/n | Newline |
/r | Carriage return |
/Q | Do not look for special pattern characters |
/t | Tab |
/u | Force next letter into uppercase |
/U | All following letters are uppercase |
/v | Vertical tab |
?/L、/U、/Q功能可以由/E關閉掉,如:
?$a = "T/LHIS IS A /ESTRING"; # same as "This is a STRING"
.要在字符串中包含雙引號或反斜線,則在其前加一個反斜線,反斜線還可以取消變量替換,如:
??$res = "A quote /" and A backslash //";
??$result = 14;
??print ("The value of /$result is $result./n")的結果為:
??The value of $result is 14.
.可用/nnn(8進制)或/xnn(16進制)來表示ASCII字符,如:
??$result = "/377"; # this is the character 255,or EOF
??$result = "/xff"; # this is also 255
.單引號字符串
??單引號字符串與雙引號字符串有兩個區別,一是沒有變量替換功能,二是反斜線不支持轉義字符,而只在包含單引號和反斜線時起作用。單引號另一個特性是可以跨多行,如:
??$text = 'This is two
??lines of text
??';
??與下句等效:
??$text = "This is two/nlines of text/n";
.字符串和數值的互相轉換
??例1:
??$string = "43";
??$number = 28;
??$result = $string + $number; # $result = 71
??若字符串中含有非數字的字符,則從左起至第一個非數字的字符,如:
??$result = "hello" * 5; # $result = 0
??$result = "12a34" +1; # $result = 13
.變量初始值
??在PERL中,所有的簡單變量都有缺省初始值:"",即空字符。但是建議給所有變量賦初值,否則當程序變得大而復雜后,很容易出現不可預料且很難調試的錯誤。
以上就是關于Perl簡單變量的概念,感謝大家的閱讀,更多內容請關注武林技術頻道網站。
新聞熱點
疑難解答
圖片精選