Perl ในขณะที่ห่วง
ขณะที่คำสั่งที่ได้รับสภาพเป็นจริงคำสั่งหรือกลุ่มของงบดำเนินการซ้ำแล้วซ้ำอีก เงื่อนไขการทดสอบจะถูกดำเนินการก่อนที่ร่างของวง
ไวยากรณ์
ไวยากรณ์เป็นดังนี้:
while(condition) { statement(s); }
นี่คือคำสั่ง (s) อาจเป็นคำเดียวก็ยังสามารถบล็อกประกอบด้วยงบไม่กี่ สภาพสามารถแสดงออกใด ๆ เมื่อมีค่าที่ไม่ใช่ศูนย์พลเป็นจริง การดำเนินการของวงเมื่อเงื่อนไขเป็นจริง
เมื่อเงื่อนไขเป็นเท็จการไหลของโปรแกรมจะยังคงมีคำสั่งต่อไปตามห่วง
แผนภูมิการไหล
แผนภูมิจุดสำคัญในขณะที่วงเป็นห่วงอาจจะไม่ดำเนินการเมื่อเงื่อนไขเป็นเท็จ, ร่างกายของวงที่จะข้ามไปยังคำสั่งต่อไปทันทีขณะที่ห่วง
ตัวอย่าง
#!/usr/bin/perl $a = 10; # 执行 while 循环 while( $a < 20 ){ printf "a 的值为 : $a\n"; $a = $a + 1; }
เมื่อร่างกายห่วงที่จะดำเนินการเมื่อโปรแกรมที่อยู่ในตัวแปร $ จะน้อยกว่า 20 ในตัวแปร $ เป็นมากกว่าหรือเท่ากับ 20 เพื่อออกจากวง
โปรแกรมข้างต้นผลลัพธ์คือ:
a 的值为 : 10 a 的值为 : 11 a 的值为 : 12 a 的值为 : 13 a 的值为 : 14 a 的值为 : 15 a 的值为 : 16 a 的值为 : 17 a 的值为 : 18 a 的值为 : 19