Apabila pengaturcaraan,untuk setiap Perintah mengimplementasikan gelung di mana pembolehubah gelung menganggap nilai dari satu atau lebih senarai. Dalam kes yang paling mudah terdapat satu pemboleh ubah gelung, varname , dan satu senarai, senarai , itu adalah senarai nilai untuk diberikan kepada varname . The badan hujah adalah skrip Tcl. Untuk setiap elemen senarai (dari awal hingga akhir),untuk setiap menyerahkan kandungan elemen kepada varname seolah-olahlindexarahan telah digunakan untuk mengekstrak elemen, kemudian memanggil penterjemah Tcl untuk melaksanakan badan .
Sinopsis
untuk setiap senarai tubuh varname
untuk setiap senarai varlist1 ? senarai varlist2 … ? badan
Perbincangan
Dalam kes umum, boleh terdapat lebih daripada satu senarai nilai (contohnya, list1 dan list2 ), dan setiap senarai nilai boleh dikaitkan dengan senarai pembolehubah gelung (contohnya, varlist1 dan varlist2 ). Semasa setiap lelaran gelung, pembolehubah masing-masing varlist diberi nilai berturut-turut dari yang sepadan senarai . Nilai dalam setiap senarai digunakan dalam urutan dari pertama hingga terakhir, dan setiap nilai digunakan tepat sekali. Jumlah lelaran gelung cukup besar untuk menggunakan semua nilai dari semua senarai nilai. Jika senarai nilai tidak mengandungi elemen yang cukup untuk setiap pembolehubah gelungnya dalam setiap lelaran, nilai kosong digunakan untuk elemen yang hilang.
Thepecah danteruskan pernyataan boleh digunakan di dalam badan , dengan kesan yang sama seperti dalam untuk perintah. Foreach mengembalikan rentetan kosong.
Contoh
Gelung berikut digunakan i dan j sebagai pembolehubah gelung untuk mengulangi pasangan pasang elemen satu senarai.
tetapkan x {} foreach {i j} {a b c d e f} {lappend x $ j $ i} # Nilai x adalah "b a d c f e" # Terdapat 3 lelaran gelung.
Gelung seterusnya digunakan i dan j untuk mengulangi dua senarai selari.
tetapkan x {} foreach i {a b c} j {d e f g} {lappend x $ i $ j} # Nilai x adalah "a d b e c f {} g" # Terdapat 4 lelaran gelung.
Kedua-dua bentuk digabungkan dalam contoh berikut.
set x {} foreach i {a b c} {j k} {d e f g} {lappend x $ i $ j $ k} # Nilai x adalah "a d e b f g c {} {}" # Terdapat 3 lelaran gelung.
Nota
Beberapa arahan yang berkaitan berfungsi denganuntuk setiap termasuk:
- untuk (n)
- sementara (n)
- pecah (n)
- teruskan (n)
Oleh kerana pengagihan Linux dan tahap keluaran kernel berbeza-beza, gunakan lelaki perintah ( % lelaki ) untuk melihat bagaimana arahan khusus digunakan pada komputer tertentu anda.