perl簡單變數 整型 浮點數 字串

來源:互聯網
上載者:User

基本上,簡單變數就是一個資料單元,這個單元可以是數字或字串。
一、整型
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
$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中,所有的簡單變數都有預設初始值:"",即Null 字元。但是建議給所有變數賦初值,否則當程式變得大而複雜後,很容易出現不可預料且很難調試的錯誤。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.