linux perl的while循环中ctrl+c失效,perl循环控制
if
格式(類似于awk):if(表達式){????????????????#空格可以忽略
語句?;}?????????????????????#elsif注意多了個s,elsif和else可以省略
elsif(表達式){?????????????#語句塊的{}必須有,可以為空
語句:}
else{
語句;}
unless
格式:unless?(表達式){
語句;}
while
格式:while(表達式){
語句;}
do while
格式:do?{語句}?while(表達式)
until
格式:until(表達式){
語句;}
do until
格式:do?{語句}?until(表達式)
for foreach
for和foreach等價可以互換
格式:
c語言風格for(表達式1;表達式2;表達式3){
語句;}
表達式可以省略分號必須保留:(;;)為死循環(huán)for($l=<>,$count=1;$count<10;$count++,$l=<>){
print?"$l";}
foreachforeach?$w?(列表or數(shù)組){
語句;}
()中為@array或者列表(1,2,3)
$w為循環(huán)體的局部變量,并不會影響外部同名變量
循環(huán)體每次取數(shù)組或列表的元素直到為空
修改$w會修改對應元素的值;$w是列表數(shù)組元素的一個引用,與列表或數(shù)組變量引用具有相同內存地址,所以修改$w會修改其對應元素的值
列表中為常量,$w不可改變,$w只是對數(shù)組列表元素的一個引用,$w賦值時,$w指向新的內存對象,原列表中的值并不改變for?$a(@a){}
for?$a(1,2,3){}
for?$k(keys%h){}
for?$a(@a[1,2]){}
for?(@a){}????#省略循環(huán)變量,缺省為$_
grep,map函數(shù)相當于for每個元素進行操作
循環(huán)控制
last 退出循環(huán)
next 執(zhí)行下一次循環(huán)
redo 重新執(zhí)行本次循環(huán),for自增不進行,do語句中無效
goto 跳轉,不能跳到循環(huán)或者子程序內
標記:
字母加下劃線,通常用大寫,以:分隔
標記定義:在循環(huán)語句前或者語句前(goto)
while for
跳轉到標記: last|next|redo|goto labelOUT:?while?(...){
while(...){...
last?OUT;????#跳轉到OUT標識的語句塊,這里是跳出這一層循環(huán)到外層循環(huán)
}
}
continue{語句}
跟在循環(huán)語句后,循環(huán)體執(zhí)行完成,下一次條件判斷前執(zhí)行
{}標識語句塊
last跳出后不執(zhí)行,next執(zhí)行;
單行條件語句與循環(huán)語句print?$a?if?$a==0;#先判斷條件在執(zhí)行打印
print?$a?unless($a==0);
print?$a?while?($a==0);
#不要丟失對變量控制,防止形成死循環(huán)
print?$a?while?($a--==0);
print?$a?until?($a--==0);
|| && (用法同shell)$a==0?&&?print?$a;
open(FD6,'file')||die?"can't?open?file";#die函數(shù),輸出標準錯誤輸出后推出
warn:輸出信息后不退出,只是報警
$! :內部變量包含錯誤代碼
$@ :內部變量包含錯誤信息
總結
以上是生活随笔為你收集整理的linux perl的while循环中ctrl+c失效,perl循环控制的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 佳能g3800故障灯说明书_佳能打印机故
- 下一篇: amr转换成mp3 java_java将