新聞中心
本文和大家重點討論一下Perl print用法中遇到的兩個問題,使用Perl print的不同的寫法時會出現(xiàn)一些不同的問題,這里和大家分享一下,相信通過本文的學(xué)習(xí)你對Perl print的概念一定會有初步的認識。

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:域名注冊、虛擬空間、營銷軟件、網(wǎng)站建設(shè)、浉河網(wǎng)站維護、網(wǎng)站推廣。
使用Perl print命令時遇到的問題
使用Perl print的不同的寫法時會出現(xiàn)一些不同的問題:
1.打印數(shù)組:
可能你會習(xí)慣這樣寫:
@array1=(“body”,”head”,”tail”);
print@array1;
那么回輸出:bodyheadtail
如果這樣寫:print“array1”;
會輸出:bodyheadtail
中間會有空格出現(xiàn),Perl會把””之間的數(shù)組先插入一些符號后然后變成字符串輸出。
如果你的數(shù)組元素當中有以換行符結(jié)尾:
參考下列代碼:
@array2=(“head\n”,”body\n”,”tail\n”);
Print“array2”;
運行的結(jié)果當中除了第一行,后面的bodytail都會有一個空格的縮進,所以如果你的數(shù)組元素當中包含有換行符,那么在你用print“@array”的時候,你就要注意輸出的問題了。
2.帶()的print和不帶()的Perl print
Print(“hello”);
Print“hello”;
以上兩個語句會有同樣的輸出,似乎沒有什么區(qū)別,其實是有的
第一個加了()的Perl print會被看待為一個函數(shù)。第二個則被看成是一個運算式
在執(zhí)行數(shù)值運算的時候您會看到有區(qū)別:
下面的打印您覺得會輸出什么?
Print(2+4)*5;
結(jié)果是:6,why???????不應(yīng)該是30么,如果你不相信你可以運行以下:
這是不是Perl出了問題?絕對不是,其實如果你對print輸出加上
()的話,Perl就會把它當作是一個函數(shù),然后運算這個函數(shù),得到結(jié)果后
與后面的值運算,應(yīng)為Perl print如果打印成功就會返回1,所以上面運算完之后
得出5。
如果你想正確的打印輸出,那么比這樣寫:
Print5*(2+4);
或者:
Print((2+4)*5);
D:\>Perl-e"print(2+4)*5"
6
D:\>Perl-e"print5*(2+4)"
30
D:\>Perl-e"print((2+4)*5)"
30
【編輯推薦】
- 深入解析Perl內(nèi)部函數(shù)的使用
- 術(shù)語匯編 Perl內(nèi)容簡介
- Perl語言中的五大變量類型
- 揭秘Perl變量中Perl純變量用法
- Perl程序設(shè)計中的Perl用戶函數(shù)(子程序)
分享標題:Perlprint命令使用時遇到的兩個問題
網(wǎng)頁URL:http://m.5511xx.com/article/cogcpoh.html


咨詢
建站咨詢
