自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

淺析Perl標(biāo)量的操作符

開發(fā) 架構(gòu)
Perl標(biāo)量的概念你是否熟悉,這里向大家簡單介紹一下,Perl標(biāo)量的操作符,標(biāo)量可以分為兩類:一類是數(shù)字,另一類是字符串。

本文和大家重點(diǎn)討論一下Perl標(biāo)量的操作符,Perl標(biāo)量可以分為兩類:一類是數(shù)字,另一類是字符串。在Perl語言中這兩類數(shù)據(jù)可以相互轉(zhuǎn)化,但是操作還是有區(qū)別的。

Perl標(biāo)量的操作符

  今天來看看Perl標(biāo)量的操作符,Perl標(biāo)量可以分為兩類:一類是數(shù)字,另一類是字符串。在perl中這兩類數(shù)據(jù)可以相互轉(zhuǎn)化,但是操作還是有區(qū)別的。

  下面先介紹數(shù)字類型的操作符:

  數(shù)字類型的運(yùn)算操作符有一下幾種:
  +(加),-(減),*(乘),/(除),-(取反)。
  不會(huì)的舉手,好沒有。

  下面講一些難的。
  ***個(gè)是“%”(取余)。嗯,會(huì)C語言的可以退場。這個(gè)操作符的使用方法和“/”差不多,但是結(jié)果是除之后的余數(shù)。例如:
   $a=6%5;這時(shí)$a的值為1;
   $b=5%6;這時(shí)$b的值為5。
  如果在進(jìn)行求余運(yùn)算時(shí)不是整數(shù),那么四舍五入后進(jìn)行運(yùn)算,不可以對0求余噢!

  第二個(gè)是冪運(yùn)算(**)。
  $c=2**3;這時(shí)$c的值為8。相信我,我寫了一個(gè)程序?qū)嶒?yàn)過的,程序如下:
   #!/user/bin/perl-w
   usestrict;{
   my$a=2**3;
   print$a;
   }

  還有兩種我們應(yīng)該知道的Perl標(biāo)量運(yùn)算符是“++”和“--”。“++”在自身基礎(chǔ)上面加一,“--”在自身基礎(chǔ)上減一。這種運(yùn)算在c里面經(jīng)常用的。

  數(shù)字的比較運(yùn)算符有下面幾個(gè):“<”,“>”,“<=”,“>=”我想這幾個(gè)我就不用解釋了。再有一個(gè)就是“==”這個(gè)運(yùn)算符用來對比兩個(gè)數(shù)字是否相等。然后就是“!=”表示兩個(gè)數(shù)字不等。
  還有一個(gè)好玩的比較運(yùn)算符是“<=>”,這個(gè)運(yùn)算符當(dāng)左邊的數(shù)字小于右邊的時(shí)返回-1,相等時(shí)返回0,當(dāng)左邊的大于右邊的時(shí)返回1。

  另外就是位操作符了,和c一摸一樣。
  位與:&位或:|位非:~位異或:^左移:$x<<1右移:$x>>2
  注:不要將&用于負(fù)整數(shù),因?yàn)镻ERL將會(huì)把它們轉(zhuǎn)化為無符號數(shù)。

  然后要講一講的是賦值操作符,最基本的賦值操作符是“=”,(廢話?。┤缓笠环N是“+=”表示在自身基礎(chǔ)上面增加。例如:
   $d=3;$d+=3;這時(shí)$d就等于6了。
  相應(yīng)的還有“-=”,“*=”,“/=”,“**=”,“^=”,“&=”,“|=”,“~=”。數(shù)字的操作符大致就有這些了。

  下面是關(guān)于字符串的Perl標(biāo)量操作符的介紹。

兩個(gè)字符串相加(連接)用“.”進(jìn)行。例如:
   $e="hello"."all";
  這時(shí)$e的值為“helloall”相應(yīng)的也就有“.=”運(yùn)算了。
  另外還有一個(gè)運(yùn)算符是x,沒錯(cuò),就是它。用來表示……只可意會(huì),不可言傳。
   $f="f"x5;      此時(shí)$f的值為"fffff",明白了吧?
  字符串的比較用以下的操作符進(jìn)行:
   “lt”意為“小于,lessthan”;
   “gt”意為“大于,greaterthan”;
   “eq”意為“等于,equal”;
   “le”意為“小于等于,lessthanorequal”;
   “ge”意為“大于等于,greaterorequal”;
   “ne”意為“不等于,notequal”;
   “cmp”意為“比較,返回1,0,or-1,compare”。

  可以看出來字符串的操作和數(shù)字的操作是相對的。
  另外對字符串可以進(jìn)行“++”運(yùn)算,這時(shí)將會(huì)把字符串的ascii碼加一。但是"z"++卻是"a","Z"++是"A","9"++是0,"ab99"++將會(huì)得到"ac00"。呵呵,很好玩吧?字符串是沒有-,*,/等運(yùn)算的。如果我們對字符串進(jìn)行這些運(yùn)算則表示我們要把字符串轉(zhuǎn)換成數(shù)字然后進(jìn)行計(jì)算。如果這個(gè)字符串是"111"還好說,如果我們強(qiáng)制perl把例如"aaaaa"一類的字符串進(jìn)行數(shù)字運(yùn)算,perl會(huì)把這些字符串轉(zhuǎn)換成0。因此"aaa"--將會(huì)得到-1。很好玩是不是?呵呵,perl還有很多好玩的東西。

  對Perl標(biāo)量進(jìn)行操作還可以使用下面的函數(shù)。

  ***個(gè)是length(),這個(gè)函數(shù)可以返回變量打印出來的長度。例如:
   length(23),將會(huì)返回2;
   length("hahaha"),將會(huì)返回6;
   length(1)將返回1。
  在perl5中l(wèi)ength("你好"),將會(huì)返回4,聽說在perl5.6中將不會(huì)。我沒有實(shí)驗(yàn)過,不好說什么。

  第二個(gè)函數(shù)是chop()。這個(gè)函數(shù)將會(huì)節(jié)掉字符串中的***一個(gè)字符,例如:
   $g="aaa";
   chop($g);
  這時(shí)$g中的值是"aa";同時(shí)chop會(huì)返回它所截下來的字符。試一試$g="你好";chop($g);會(huì)發(fā)生什么?

  第三個(gè)函數(shù)是chomp(),這個(gè)函數(shù)僅僅將字符串末尾的換行符裁掉。

  第四個(gè)函數(shù)是substr()這個(gè)函數(shù)可以從一個(gè)字符串中截取一段長度的字符串并將其返回。例如:
   $h="helloall";
   $i=substr($h,3,5)
  將會(huì)從“helloall”中截取長度為5的字符串,就是"loal"。試一試這樣呢?
   $h="你們好嗎?";
   $i=substr($h,3,5);

  第五個(gè)很有用的函數(shù)就是defined(),這個(gè)函數(shù)用來判斷一個(gè)數(shù)據(jù)是否已經(jīng)定義。在perl中,一個(gè)數(shù)據(jù)如果沒有定義,那么他將會(huì)是一個(gè)叫做undef的特殊值?!efined()是一個(gè)非常有用的函數(shù)。至少我經(jīng)常用。有其是在判斷cgi輸入的時(shí)候。

【編輯推薦】

  1. 暢談Perl時(shí)間處理函數(shù)用法
  2. 術(shù)語匯編 Perl內(nèi)容簡介
  3. Perl語言中的五大變量類型
  4. 揭秘Perl變量中Perl純變量用法
  5. Perl程序設(shè)計(jì)中的Perl用戶函數(shù)(子程序)

 

 

責(zé)任編輯:佚名 來源: csdn.net
相關(guān)推薦

2010-07-15 09:49:23

Perl標(biāo)量

2010-07-19 11:00:24

Perl操作符

2010-07-14 14:30:31

Perl操作符

2010-07-14 14:18:51

Perl操作符

2010-07-14 14:55:07

Perl操作符

2009-09-15 17:16:58

LINQ查詢操作符

2009-08-19 17:26:28

C# 操作符

2010-07-19 11:12:43

Perl 不等于

2009-08-19 17:20:22

C# 操作符

2010-01-19 13:32:20

C++操作符

2010-07-14 14:46:57

Perl操作符

2009-08-18 17:42:12

C#操作符重載

2009-08-19 17:38:17

C# 操作符分類

2021-10-31 18:59:55

Python操作符用法

2009-07-21 09:31:00

Scala操作符

2009-11-30 16:48:08

PHP操作符

2009-07-14 18:34:22

Jython操作符重載

2010-07-19 09:52:04

Perl標(biāo)量

2011-04-08 16:26:14

JavaScript

2009-09-16 09:09:23

Linq Contai
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號