Kapag ang programming, angforeach Ang utos ay nagpapatupad ng isang loop kung saan ipinapalagay ng mga variable ng loop ang mga halaga mula sa isa o higit pang mga listahan. Sa pinakasimpleng kaso ay may isang loop variable, varname , at isang listahan, listahan , iyon ay isang listahan ng mga halaga upang italaga sa varname . Ang katawan Ang argument ay isang Tcl script. Para sa bawat elemento ng listahan (mula sa una hanggang sa huling),foreach nagtatalaga ng mga nilalaman ng elemento varname parang anglindexAng utos ay ginamit upang kunin ang sangkap, pagkatapos ay tawagin ang Tcl interpreter upang maipatupad katawan .
Buod
foreach varname list body
foreach listahan ng varlist1 ? varlist2 list2 … ? katawan
Usapan
Sa isang pangkalahatang kaso, maaaring mayroong higit sa isang listahan ng halaga (hal., list1 at list2 ), at ang bawat listahan ng halaga ay maaaring nauugnay sa isang listahan ng mga variable ng loop (hal., varlist1 at varlist2 ). Sa bawat pag-ulit ng loop, ang mga variable ng bawat isa varlist ay itinalaga na magkakasunod na halaga mula sa nararapat listahan . Mga halaga sa bawat isa listahan ay ginagamit sa pagkakasunud-sunod mula sa una hanggang sa huling, at ang bawat halaga ay ginagamit eksaktong minsan. Ang kabuuang bilang ng mga loop na iteration ay sapat na malaki upang gamitin ang lahat ng mga halaga mula sa lahat ng mga listahan ng halaga. Kung ang isang listahan ng halaga ay hindi naglalaman ng sapat na mga elemento para sa bawat isa sa mga variable ng loop nito sa bawat pag-ulit, ang mga walang laman na halaga ay ginagamit para sa nawawalang mga elemento.
Angpahinga atmagpatuloy ang mga pahayag ay maaaring tawagin sa loob katawan , na may parehong epekto tulad ng sa para sa utos. Ang foreach nagbabalik ng walang laman na string.
Mga halimbawa
Gumagamit ang sumusunod na loop i at j bilang mga variable ng loop upang umulit sa mga pares ng mga elemento ng isang solong listahan.
set x {} foreach {i j} {a b c d e f} {lappend x $ j} i} # Ang halaga ng x ay "b a d c f e" # Mayroong 3 mga pag-ulit ng loop.
Gumagamit ang susunod na loop i at j upang ulitin ang dalawang listahan sa kahanay.
set x {} foreach i {a b c} j {d e f g} {lappend x $ i $ j} # Ang halaga ng x ay "a d b e c f {} g" # Mayroong 4 na mga pag-ulit ng loop.
Ang dalawang anyo ay pinagsama sa sumusunod na halimbawa.
set x {} foreach i {a b c} {j k} {d e f g} {lappend x $ i $ j $ k} # Ang halaga ng x ay "a d e b f g c {} {}" # Mayroong 3 mga pag-ulit ng loop.
Mga Tala
Maraming kaugnay na mga utos ang gumaganaforeach kabilang ang:
- para sa (n)
- habang (n)
- break (n)
- magpatuloy (n)
Dahil iba-iba ang pamamahagi ng Linux at mga antas ng kernel-release, gamitin ang lalaki command ( % lalaki ) upang makita kung paano ang isang utos ay partikular na ginagamit sa iyong partikular na computer.