லினக்ஸ் "முன்கூட்டியே" கட்டளை மூலம் Iterators ஐ உருவாக்கவும்

நிரலாக்க போது, foreach கட்டளை ஒரு வளைய செயல்படுத்துகிறது அங்கு வளைய மாறிகள் ஒன்று அல்லது அதற்கு மேற்பட்ட பட்டியல்களில் மதிப்புகள் கருதி. எளிய விஷயத்தில் ஒரு வட்ட மாறி, வார்னமை மற்றும் ஒரு பட்டியல், பட்டியல் , இது வார்னீமிற்கு ஒதுக்க மதிப்புகள் பட்டியலாகும் . உடல் வாதம் ஒரு Tcl ஸ்கிரிப்ட் ஆகும். பட்டியலின் ஒவ்வொரு உறுப்புக்கும் (முதன்மையானது முதல்), லிண்டெக்ஸ் கட்டளை உறுப்புகளை பிரித்தெடுக்கப் பயன்படுகிறது, பின்னர் Tcl மொழிபெயர்ப்பாளரை உடலைச் செயல்படுத்துமாறு அழைக்கிறது.

கதைச்சுருக்கம்

வார்மேன் பட்டியல் உடல்
varlist1 list1 முன்னாடி ? varlist2 list2 ... ? உடல்

கலந்துரையாடல்

ஒரு பொது வழக்கில், ஒன்றுக்கும் மேற்பட்ட மதிப்புக் பட்டியல் (எ.கா., பட்டியல் 1 மற்றும் பட்டியல் 2 ) இருக்கக்கூடும் , மேலும் ஒவ்வொரு மதிப்புக் பட்டியல், லூப் மாறிகள் பட்டியலை (எ.கா., varlist1 மற்றும் varlist2 ) தொடர்புடையதாக இருக்கலாம். சுழற்சி ஒவ்வொரு மறு செய்கையின் போது, ​​ஒவ்வொரு பட்டியலின் மாறிகள் தொடர்புடைய பட்டியலிலிருந்து தொடர்ச்சியான மதிப்புகள் ஒதுக்கப்படுகின்றன. ஒவ்வொரு பட்டியலிலும் உள்ள மதிப்புகள் முதலில் முதல் கடைசி வரை பயன்படுத்தப்படுகின்றன, ஒவ்வொரு மதிப்பு சரியாக ஒரு முறை பயன்படுத்தப்படுகிறது. அனைத்து மதிப்பீட்டு பட்டியல்களிலிருந்தும் அனைத்து மதிப்புகளையும் பயன்படுத்துவதற்கு போதுமான எண்ணிக்கையிலான லூப் செயல்திறன் அதிகமானது. ஒரு மதிப்பீடு பட்டியலில் ஒவ்வொரு மீட்டமைப்பின் ஒவ்வொரு லூப் மாறிகள் ஒவ்வொன்றிற்கும் போதுமான உறுப்புகளைக் கொண்டிருக்கவில்லை என்றால், வெற்று மதிப்புகள் காணப்படாத உறுப்புகளுக்கு பயன்படுத்தப்படுகின்றன.

முறிவு மற்றும் தொடர்ந்து அறிக்கைகள் கட்டளையிலுள்ள அதே விளைவை உடலில் உள்ளே கொண்டு வரப்படலாம். F oreach ஒரு வெற்று சரம் கொடுக்கிறது.

எடுத்துக்காட்டுகள்

பின்வரும் சுழற்சி i மற்றும் j ஐ loop variables என ஒரு ஒற்றைப் பட்டியலில் உள்ள கூறுகளின் ஜோடிகளாகப் பயன்படுத்துகிறது.

x அடுத்த வளையம் இரண்டு மற்றும் இரண்டு பட்டியல்களில் இணையாக i மற்றும் j ஐ பயன்படுத்துகிறது.

x {foreclose i {abc} j {defg} {lapend x $ i $ j} # x இன் மதிப்பு "adbecf {} g" # சுழற்சியில் 4 செயல்முறைகள் உள்ளன.

பின்வரும் வடிவங்களில் இரண்டு வடிவங்களும் இணைந்துள்ளன.

x {i}} jk = {lt} {lapend x $ i $ j $ k} # x இன் மதிப்பு "adebfgc {} {}" # சுழற்சியில் 3 செயற்பாடுகள் உள்ளன.

குறிப்புக்கள்

பல தொடர்புடைய கட்டளைகள் foreach உடன் வேலை செய்கின்றன:

  • (N)
  • போது (n),
  • இடைவெளி (n),
  • (N), தொடர்ந்து

லினக்ஸ் பகிர்வு மற்றும் கர்னல்-வெளியீடு நிலைகள் மாறுபடுவதால், ஒரு குறிப்பிட்ட கட்டளை உங்கள் குறிப்பிட்ட கணினியில் எவ்வாறு பயன்படுத்தப்படுகிறது என்பதைப் பார்க்க, மனிதன் கட்டளை ( % man ) ஐப் பயன்படுத்தவும்.