ឈ្មោះ
expr - វាយតម្លៃកន្សោម
សង្ខេប
expr arg ? arg arg ... ?
អាគុយម៉ង់របស់ Concatenates (ការបន្ថែមដកឃ្លាចន្លោះរវាងពួកវា) វាយតម្លៃលទ្ធផលជាកន្សោម Tcl និងត្រឡប់តម្លៃ។ សញ្ញាប្រមាណវិធីដែលអនុញ្ញាតនៅក្នុងកន្សោម Tcl គឺជាសំណុំរងនៃសញ្ញាប្រមាណវិធីដែលបានអនុញ្ញាតនៅក្នុងកន្សោម C ហើយវាមានអត្ថន័យដូចគ្នានិងអាទិភាពដូចប្រតិបត្តិករ C ដែលត្រូវគ្នា។ កន្សោមតែងតែ ផ្តល់ទិន្នផលជាលេខ (តម្លៃចំនួនគត់ឬអណ្តែត) ។ ឧទាហរណ៍កន្សោម
expr 8.2 + 6វាយតំលៃដល់ 14.2 ។ កន្សោម Tcl ខុសគ្នាពីកន្សោម C នៅក្នុងវិធីដែលតាងត្រូវបានបញ្ជាក់។ ដូចគ្នានេះផងដែរកន្សោម Tcl គាំទ្រដល់ឧបករណ៏ដែលមិនមានលេខនិងការប្រៀបធៀបខ្សែអក្សរ។
Operands
កន្សោម Tcl មានការរួមបញ្ចូលគ្នារវាង operands, operators និងវង់ក្រចក។ ចន្លោះពណ៌សអាចត្រូវបានប្រើរវាងតួអក្សរនិងសញ្ញាប្រមាណវិធីនិងវង់ក្រចក។ វាត្រូវបានមិនអើពើដោយសេចក្តីណែនាំនៃការបញ្ចេញមតិ។ នៅកន្លែងដែលអាចធ្វើបានតាងត្រូវបានបកប្រែជាតម្លៃចំនួនគត់។ តម្លៃចំនួនគត់អាចត្រូវបានបញ្ជាក់ជាគោលដប់ (ករណីធម្មតា) ក្នុងប្រព័ន្ធគោលប្រាំបី (បើតួអក្សរដំបូងនៃ operand គឺ 0 ) ឬក្នុងប្រព័ន្ធគោលដប់ប្រាំមួយ (ប្រសិនបើតួអក្សរ 2 ដំបូងនៃ operand គឺ 0x ) ។ ប្រសិនបើទ្រឹស្តីបទមួយមិនមានទ្រង់ទ្រាយចំនួនគត់ណាមួយដែលត្រូវបានផ្តល់ឱ្យខាងលើនោះវាត្រូវបានចាត់ទុកថាជាលេខចង្អុលបង្ហាញប្រសិនបើអាចទៅរួច។ លេខសម្គាល់អណ្តែតអាចត្រូវបានបញ្ជាក់ក្នុងវិធីណាមួយដែលបានទទួលដោយកម្មវិធីចងក្រង C របស់ ANSI ដែលអនុលោម (លើកលែងតែបច្ច័យ f , F , l និង L នឹងមិនត្រូវបានអនុញ្ញាតនៅក្នុងការដំឡើងភាគច្រើនទេ) ។ ឧទាហរណ៏ដូចតទៅចំនួនលេខដូចគ្នានឹងអណ្តែតលេខ: 2.1, 3. , 6e4, 7.91e + 16 ។ ប្រសិនបើគ្មានការបកស្រាយលេខទេនោះទ្រឹស្តីបទត្រូវបានទុកជាខ្សែអក្សរ (ហើយមានតែសំណុំសញ្ញាប្រមាណវិធីតិចតួចអាចត្រូវបានអនុវត្តទៅវា) ។
ប្រតិបត្តិករអាចត្រូវបានបញ្ជាក់តាមវិធីណាមួយដូចខាងក្រោម:
[1]
ក្នុងនាមជាតម្លៃជាលេខគត់ចំនួនគត់ឬអណ្តែត។
[2]
ជាអថេរ Tcl ដោយប្រើស្ដង់ដារ $ notation ។ តម្លៃរបស់អថេរនឹងត្រូវបានប្រើជា operand ។
[3]
ក្នុងនាមជាខ្សែអក្សរមួយដែលរុំព័ទ្ធដោយសញ្ញាសម្រង់ពីរ។ កម្មវិធីញែកកម្មវិធីវាយអត្ថបទនឹងអនុវត្តការជំនួសសញ្ញាអថេរនិងពាក្យបញ្ជាលើព័ត៌មានរវាងសញ្ញាសម្រង់និងប្រើតម្លៃលទ្ធផលជាលិបិក្រម។
[4]
ក្នុងនាមជាខ្សែអក្សរភ្ជាប់ជាមួយដង្កៀប។ តួអក្សររវាងសញ្ញាបើកនិងការផ្គូផ្គងទ្វេដែលត្រូវគ្នានឹងត្រូវបានប្រើជាតួអក្សរដោយគ្មានការជំនួស។
[5]
ក្នុងនាមជាពាក្យបញ្ជា Tcl ភ្ជាប់ជាមួយតង្កៀប។ ពាក្យបញ្ជានឹងត្រូវបានប្រតិបត្តិហើយលទ្ធផលរបស់វានឹងត្រូវបានប្រើជា operand ។
[6]
ក្នុងនាមជាមុខងារគណិតវិទ្យាដែលអាគុយម៉ង់មានណាមួយនៃសំណុំបែបបទខាងលើសម្រាប់ operands ដូចជា sin ($ x) ។ សូមមើលខាងក្រោមសម្រាប់បញ្ជីនៃអនុគមន៍ដែលបានកំណត់។
ដែលជំនួសកន្លែងកើតឡើងខាងលើ (ឧ។ ក្នុងខ្សែអក្សរដែលបានដកស្រង់) ពួកវាត្រូវបានអនុវត្តដោយសេចក្តីណែនាំនៃការបញ្ចេញមតិ។ ទោះជាយ៉ាងណាក៏ដោយស្រទាប់បន្ថែមនៃការជំនួសអាចរួចហើយត្រូវបានអនុវត្តដោយកម្មវិធីញែកពាក្យបញ្ជាមុនពេលដែលខួរក្បាលដំណើរការត្រូវបានហៅ។ ដូចដែលបានពិគ្រោះខាងក្រោមវាជាធម្មតាល្អបំផុតក្នុងការដាក់កន្សោមក្នុងដង្កៀបដើម្បីការពារការវិភាគពាក្យបញ្ជាពីការជំនួសការសម្តែងលើមាតិកា។
ឧទាហរណ៍ខ្លះនៃកន្សោមសាមញ្ញ, ឧបមាថាអថេរ មួយ មានតម្លៃ 3 និងអថេរ b មានតម្លៃ 6 ។ បន្ទាប់មកពាក្យបញ្ជានៅលើផ្នែកខាងឆ្វេងនៃបន្ទាត់នីមួយៗខាងក្រោមនឹងបង្កើតតម្លៃនៅផ្នែកខាងស្តាំនៃបន្ទាត់:
expr 3,1 + $ a6.1 expr 2 + "$ a ។ $ b" 5.6 expr 4 * [ll length "6 2"] 8 expr {{one one} <"word $ a"} 0ប្រតិបត្តិករ
ប្រតិបត្តិករត្រឹមត្រូវត្រូវបានរាយនៅខាងក្រោមដែលត្រូវបានដាក់ជាលំដាប់លំដាប់ថយចុះ:
- + ~!
អយស្យាដក, មិនស្មើគ្នាបូកសរុបមិនសមហេតុសមផលមិនសមហេតុសមផល។ គ្មានប្រត្តិបត្តិទាំងនេះអាចត្រូវបានអនុវត្តចំពោះប៉ារ៉ាម៉ែត្រខ្សែអក្សរនិង NOT-wise NOT អាចត្រូវបានអនុវត្តតែចំពោះចំនួនគត់។
* /%
គុណចែកបំបែក។ គ្មានប្រត្តិបត្តិទាំងនេះអាចត្រូវបានអនុវត្តទៅនឹងវាក្យស័ព្ទហើយសល់អាចត្រូវបានអនុវត្តតែចំពោះចំនួនគត់។ សេសសល់នឹងមានសញ្ញាដូចគ្នាជាតិត្ថិភាពហើយតម្លៃដាច់ខាតតូចជាងតួចែក។
+ -
បូកនិងដក។ មានសុពលភាពសម្រាប់តួលេខណាមួយ។
<< >>
ការផ្លាស់ប្តូរឆ្វេងនិងស្ដាំ។ មានសុពលភាពសម្រាប់ operand ចំនួនគត់។ ការផ្លាស់ប្តូរត្រឹមត្រូវតែងតែបន្តពូជសញ្ញា។
<> <=> =
ប៊ូលីនតិចជាងធំជាងតិចជាងឬស្មើនិងធំជាងឬស្មើ។ ប្រតិបត្តិករនីមួយៗបង្កើត 1 ប្រសិនបើលក្ខខណ្ឌពិត 0 បើមិនដូច្នេះទេ។ សញ្ញាប្រមាណវិធីទាំងនេះអាចត្រូវបានអនុវត្តទៅខ្សែអក្សរក៏ដូចជាអថេរលេខដែលក្នុងករណីដែលការប្រៀបធៀបខ្សែអក្សរត្រូវបានប្រើ។
==! =
ប៊ូលីនស្មើនិងមិនស្មើគ្នា។ ប្រតិបត្តិករនីមួយៗបង្កើតលទ្ធផលសូន្យ / មួយ។ មានសុពលភាពសម្រាប់ប្រភេទតិបត្តិទាំងអស់។
&
ប៊ីតប្រាជ្ញា AND ។ មានសុពលភាពសម្រាប់ operand ចំនួនគត់។
^
ឯកសណ្ឋានប៊ីត - ផ្តាច់មុខ OR ។ មានសុពលភាពសម្រាប់ operand ចំនួនគត់។
|
ប៊ីតប្រាជ្ញា OR ។ មានសុពលភាពសម្រាប់ operand ចំនួនគត់។
&&
ឡូជីខល AND ។ បង្កើតលទ្ធផល 1 ប្រសិនបើទាំងពីរមិនស្មើសូន្យ 0 បើមិនដូច្នេះទេ។ មានសុពលភាពសម្រាប់ប៊ូលីននិងលេខ (ចំនួនគត់ឬអណ្តែត - ចំណុច) តែប៉ុណ្ណោះ។
||
តក្ក OR ។ បង្កើតលទ្ធផល 0 ប្រសិនបើទាំងពីរតង់ស្យុងស្មើសូន្យ 1 ។ មានសុពលភាពសម្រាប់ប៊ូលីននិងលេខ (ចំនួនគត់ឬអណ្តែត - ចំណុច) តែប៉ុណ្ណោះ។
x ? y : z
ប្រសិនបើ - បន្ទាប់មក - ផ្សេងទៀតដូចនៅក្នុងគ។ ប្រសិនបើ x វាយតំលៃមិនមែនសូន្យនោះលទ្ធផលគឺតម្លៃនៃ y ។ បើមិនដូច្នោះទេលទ្ធផលគឺតម្លៃនៃ z ។ x operand ត្រូវមានតម្លៃជាលេខ។
សូមមើលសៀវភៅដៃ C សម្រាប់ព័ត៌មានលម្អិតបន្ថែមអំពីលទ្ធផលដែលបានបង្កើតដោយប្រតិបត្តិករនីមួយៗ។ ក្រុម ប្រតិបត្តិករប្រព័ន្ធគោលពីរ ទាំងអស់ពីឆ្វេងទៅស្តាំនៅក្នុងកម្រិតអាទិភាពដូចគ្នា។ ឧទាហរណ៍ពាក្យបញ្ជា
expr 4 * 2 <7ត្រឡប់ 0 ។
&& , || , និង ?: ប្រតិបត្តិករមានការវាយតម្លៃខ្ជិលដូចនៅក្នុង C ដែលមានន័យថាតៃវ៉ាន់មិនត្រូវបានគេវាយតម្លៃប្រសិនបើពួកគេមិនចាំបាច់ដើម្បីកំណត់លទ្ធផល។ ឧទាហរណ៍ក្នុងពាក្យបញ្ជា
expr {$ v? [a]: [ខ]}មានតែមួយនៃ [a] ឬ [b] នឹងត្រូវបានវាយតម្លៃអាស្រ័យលើតម្លៃនៃ $ v ។ ចំណាំ, ទោះជាយ៉ាងណាក៏ដោយនេះគ្រាន់តែជាការពិតប្រសិនបើកន្សោមទាំងមូលត្រូវបានដាក់ក្នុងដង្កៀប។ បើមិនដូច្នេះទេកម្មវិធីវិភាគ Tcl នឹងវាយតម្លៃទាំង [a] និង [b] មុនពេលប្រើពាក្យបញ្ជា expr ។
មុខងារគណិតវិទ្យា
Tcl គាំទ្រមុខងារគណិតវិទ្យាដូចខាងក្រោម:
កំណត់ហេតុ អក្ខរាវិរុទ្ធអ័ក្សក្រម ពីរដង ឡូហ្គោ 10 ម៉ោងabs ( arg )
ត្រឡប់តម្លៃដាច់ខាតនៃ arg ។ Arg អាចជាចំនួនគត់វិជ្ជមានឬអណ្តែតហើយលទ្ធផលត្រូវបានត្រឡប់ក្នុងទំរង់ដូចគ្នា។
acos ( arg )
ត្រឡប់កូស៊ីនុសធ្នូនៃ អាគុយ នៅក្នុងជួរ [0, pi] រ៉ាន។ Arg គួរស្ថិតនៅក្នុងជួរ [-1, 1] ។
asin ( arg )
ត្រឡប់ស៊ីឌីធ្នូនៃ អាគុយ នៅក្នុងជួរ [-pi / 2, pi / 2] radians ។ Arg គួរស្ថិតនៅក្នុងជួរ [-1, 1] ។
atan ( arg )
ត្រឡប់អ័ក្សតង់សង់អ័ក្សក្នុងជួរ [-pi / 2, pi / 2] radians ។
atan2 ( x, y )
ត្រឡប់អ័ក្សតង់សង់របស់ y / x នៅក្នុងជួរ [-pi, pi] រ៉ាន។ x និង y មិនអាចទាំងពីរជា 0 ។
ceil ( arg )
ត្រឡប់តម្លៃចំនួនគត់តូចបំផុតមិនតិចជាង arg ។
cos ( arg )
ត្រឡប់កូស៊ីនុសនៃ អាគុយ ដែលបានវាស់ជារ៉ាដ្យង់។
cosh ( arg )
ត្រឡប់កូស៊ីនុសអ៊ីពែរបូលនៃ អាល់ហ្វា ។ ប្រសិនបើលទ្ធផលបណ្តាលឱ្យហូរហៀរកំហុសនឹងត្រូវបានត្រឡប់។
ទ្វេ ( អាគុយ )
ប្រសិនបើអា រ៉េ គឺជាតម្លៃអណ្តែត, ត្រឡប់ អាគុយ , បើមិនដូច្នេះទេបម្លែង អាគុយ ទៅជាអណ្តែតនិងត្រឡប់តម្លៃបម្លែង។
exp ( arg )
ត្រឡប់ការនិទស្សន្តនៃ អាគុយ ដែលបានកំណត់ជា e ** arg ។ ប្រសិនបើលទ្ធផលបណ្តាលឱ្យហូរហៀរកំហុសនឹងត្រូវបានត្រឡប់។
ជាន់ ( អាគុយ )
ត្រឡប់តម្លៃអាំងតេក្រាលធំជាងមិនធំជាង អាគុយ ។
fmod ( x, y )
ត្រឡប់ចំនួនដែលនៅទំនេរនៃផ្នែកនៃ x ដោយ y ។ ប្រសិនបើ y ស្មើ 0 នោះកំហុសនឹងត្រូវបានត្រឡប់។
អ៊ីប៉ូត ( x, y )
គណនាប្រវែងនៃត្រីកោណនៃត្រីកោណកែងត្រង់ ( x * x + y * y ) ។
int ( arg )
ប្រសិនបើអា រ៉េ គឺជាតម្លៃចំនួនគំនូរ, ត្រឡប់ អាគុយម៉ង់ , បើមិនដូច្នេះទេបម្លែង អាគុយ ទៅចំនួនគត់ដោយកាត់និងត្រឡប់តម្លៃបម្លែង។
log ( arg )
ត្រឡប់លោការីតធម្មជាតិនៃ arg ។ Arg ត្រូវតែជាតម្លៃវិជ្ជមាន។
log10 ( arg )
ត្រឡប់គោល 10 លោការីតគោល។ Arg ត្រូវតែជាតម្លៃវិជ្ជមាន។
pow ( x, y )
គណនាតម្លៃនៃ x ដែល បានលើកឡើងទៅថាមពល y ។ ប្រសិនបើ x ជាអវិជ្ជមាន y ត្រូវតែជាចំនួនគត់។
rand ()
ត្រឡប់លេខទសភាគពីសូន្យទៅតិចជាងមួយឬក្នុងលក្ខខណ្ឌគណិតវិទ្យាជួរ [0,1] ។ គ្រាប់ពូជនេះចេញមកពីនាឡិកាខាងក្នុងរបស់ម៉ាស៊ីនឬអាចត្រូវបានកំណត់ដោយដៃដោយប្រើមុខងារ srand ។
ជុំ ( arg )
ប្រសិនបើអា រ៉េ ជាតម្លៃចំនួនគំនូរ, ត្រឡប់ អាគុយម៉ង់ , បើមិនដូច្នេះទេបម្លែង អាគុយ ទៅចំនួនគត់ដោយបង្គត់និងត្រឡប់តម្លៃបម្លែង។
sin ( arg )
ត្រឡប់ស៊ីនុសនៃ arg ដែលបានវាស់ជារ៉ាដ្យង់។
កំណើត ( អាគុយ )
ត្រឡប់ស៊ីនុសអ៊ីពែរបូលនៃ arg ។ ប្រសិនបើលទ្ធផលបណ្តាលឱ្យហូរហៀរកំហុសនឹងត្រូវបានត្រឡប់។
sqrt ( arg )
ត្រឡប់ឫសការេនៃ arg ។ Arg ត្រូវតែមិនអវិជ្ជមាន។
srand ( arg )
អាគុយម៉ង់ ដែលត្រូវតែជាចំនួនគត់ត្រូវបានប្រើដើម្បីកំណត់គ្រាប់ពូជសម្រាប់ម៉ាស៊ីនភ្លើងចៃដន្យ។ ត្រឡប់លេខចៃដន្យដំបូងពីគ្រាប់នោះ។ អ្នកបកប្រែនីមួយៗមានគ្រាប់ពូជផ្ទាល់ខ្លួន។
tan ( arg )
ត្រឡប់តង់សង់របស់ arg ដែលបានវាស់ជារ៉ាដ្យង់។
tanh ( arg )
ត្រឡប់តង់ហ្ស៊ីនអ៊ីពែរបូលនៃ អាគុយ ។
បន្ថែមលើមុខងារដែលបានកំណត់ជាមុនទាំងនេះកម្មវិធីអាចកំណត់អនុគមន៍បន្ថែមដោយប្រើ Tcl_CreateMathFunc () ។
ប្រភេទ, លើសចំណុះ, និងភាពត្រឹមត្រូវ
ការគណនាខាងក្នុងទាំងស្រុងទាក់ទងនឹងចំនួនគត់គឺត្រូវបានធ្វើឡើងដោយប្រភេទ C វែង ហើយរាល់ការគណនាខាងក្នុងដែលទាក់ទងនឹងអណ្តែតចំណុចត្រូវបានធ្វើឡើងដោយប្រភេទ C ពីរដង ។ នៅពេលបម្លែងខ្សែអក្សរទៅជាអណ្តែតត្រង់ចំនុចអតិបរមារបស់និទស្សន្តត្រូវបានរកឃើញហើយលទ្ធផលក្នុងកំហុស Tcl ។ សម្រាប់ការបម្លែងទៅចំនួនគត់ពីខ្សែអក្សរការរកឃើញលើសចំណុះអាស្រ័យលើឥរិយាបថនៃទម្រង់ការខ្លះនៅក្នុងបណ្ណាល័យ C មូលដ្ឋានដូច្នេះវាគួរត្រូវបានចាត់ទុកថាមិនអាចទុកចិត្តបាន។ ក្នុងករណីណាក៏ដោយការលើសចំណុះចំនួនគត់និងលំហូរមិនត្រូវបានរកឃើញជាទូទៅសម្រាប់លទ្ធផលមធ្យមនោះទេ។ ការហូរច្រុបពិន្ទុនិងចំណុចកំពូលត្រូវបានគេរកឃើញក្នុងកម្រិតដែលគាំទ្រដោយផ្នែករឹងដែលជាទូទៅគួរឱ្យទុកចិត្ត។
ការបម្លែងរវាងតំណាងផ្ទៃក្នុងសម្រាប់អថេរចំនួនគត់អណ្តែតនិងខ្សែអក្សរត្រូវបានធ្វើដោយស្វ័យប្រវត្តិតាមត្រូវការ។ ចំពោះការគណនានព្វន្ធលេខគំនូរត្រូវបានប្រើរហូតទាល់តែចំនួនអណ្តែតចំណុចមួយចំនួនត្រូវបានណែនាំបន្ទាប់មកប្រើអណ្តែតចំណុច។ ឧទាហរណ៍,
expr 5/4ត្រឡប់ 1 ខណៈពេល
expr 5 / 4.0 expr 5 / ([ប្រវែងខ្សែអក្សរ "abcd"] +0 0)ទាំងពីរត្រឡប់ 1.25 ។ តម្លៃទសភាគតែងតែត្រូវបានត្រឡប់ជាមួយ `` មួយ ។ '' ឬ e ដូច្នេះពួកគេនឹងមិនមានតម្លៃដូចគ្នានឹងចំនួនគត់។ ឧទាហរណ៍,
expr 20.0 / 5.0ត្រឡប់ 4.0 មិនមែន 4 ទេ។
ប្រតិបត្តិការខ្សែអក្សរ
តម្លៃខ្សែអក្សរអាចត្រូវបានប្រើជាប៉ារ៉ាហ្គាយនៃសញ្ញាប្រមាណវិធីប្រៀបធៀបទោះបីជាអ្នកវាយតម្លៃបញ្ចេញមតិព្យាយាមធ្វើប្រៀបធៀបជាចំនួនគត់ឬអណ្តែតចំណុចនៅពេលវាអាច។ ប្រសិនបើប៉ារ៉ាឡែលមួយនៃការប្រៀបធៀបជាខ្សែអក្សរហើយមួយទៀតមានតម្លៃលេខតួអក្សរលេខត្រូវបានបម្លែងត្រឡប់ទៅខ្សែអក្សរមួយដោយប្រើអ្នកកំណត់ទ្រង់ទ្រាយ C sprintf សម្រាប់វិរុត្តិ និង % g សម្រាប់តម្លៃអណ្តែត។ ឧទាហរណ៍ពាក្យបញ្ជា
expr {"0x03"> "2"} expr {"0y" <"0x12"}ត្រឡប់មកវិញទាំងពីរ។ ការប្រៀបធៀបជាលើកដំបូងត្រូវបានធ្វើដោយប្រើការប្រៀបធៀបចំនួនគត់និងទីពីរត្រូវបានធ្វើរួចដោយប្រើការប្រៀបធៀបខ្សែអក្សរបន្ទាប់ពី operand ទីពីរត្រូវបានបម្លែងទៅជាខ្សែអក្សរទី 18 ។ ដោយសារតែទំនោររបស់ Tcl ដើម្បីចាត់ទុកតម្លៃជាលេខនៅពេលណាដែលអាចធ្វើទៅបានវាមិនមែនជាការល្អទេដែលប្រើសញ្ញាប្រមាណវិធីដូចជា == នៅពេលអ្នកពិតជាចង់បានការប្រៀបធៀបខ្សែអក្សរហើយតម្លៃរបស់តង់ស្យុងអាចត្រូវបានបំពាន។ វាល្អប្រសើរជាងមុននៅក្នុងករណីទាំងនេះដើម្បីប្រើពាក្យបញ្ជា ខ្សែអក្សរ ជំនួសវិញ។
ការពិចារណាលើការអនុវត្ត
ដាក់កន្សោមនៅក្នុងដង្កៀបសម្រាប់ល្បឿនដ៏ល្អបំផុតនិងតម្រូវការផ្ទុកតូចបំផុត។ នេះអនុញ្ញាតឱ្យកម្មវិធីចងក្រង Tcl bytecode បង្កើតលេខកូដល្អបំផុត។
ដូចដែលបានរៀបរាប់ខាងលើកន្សោមត្រូវបានជំនួសពីរដង: ម្តងដោយកម្មវិធីញែក Tcl និងម្តងដោយពាក្យបញ្ជា expr ។ ឧទាហរណ៍ពាក្យបញ្ជា
កំណត់ 3 សំណុំ b {$ a + 2} expr $ b * 4ត្រឡប់ 11 មិនមែនពហុគុណ 4 ទេ។ នេះគឺដោយសារកម្មវិធីវិភាគវិធី Tcl នឹងជំនួស $ a + 2 សម្រាប់អថេរ b បន្ទាប់មកពាក្យបញ្ជា expr នឹងវាយតំលៃកន្សោម $ a + 2 * 4 ។
កន្សោមភាគច្រើនមិនតម្រូវឱ្យមានការផ្លាស់ប្តូរទី 2 ។ វាត្រូវបានភ្ជាប់ជាមួយដង្កៀបឬបើមិនដូច្នោះទេអថេរនិងពាក្យបញ្ជាជំនួសរបស់ពួកគេផ្តល់លេខឬខ្សែអក្សរដែលមិនត្រូវការជំនួស។ ទោះជាយ៉ាងណាក៏ដោយដោយសារកន្សោមមិនសមហេតុផលពីរបីត្រូវការការជំនួសពីរជុំអ្នកសរសេរកម្មវិធី bytecode ត្រូវតែបញ្ចេញការណែនាំបន្ថែមដើម្បីដោះស្រាយស្ថានភាពនេះ។ លេខកូដដែលថ្លៃបំផុតគឺត្រូវបានទាមទារសម្រាប់កន្សោម unbridced ដែលមានជំនួសពាក្យបញ្ជា។ កន្សោមទាំងនេះត្រូវតែអនុវត្តដោយការបង្កើតកូដថ្មីរាល់ពេលដែលកន្សោមត្រូវបានប្រតិបត្តិ។
ពាក្យគន្លឹះ
នព្វន្ធ, ប៊ូលីន , ប្រៀបធៀប, ការបញ្ចេញមតិ, ការប្រៀបធៀបដែលមិនច្បាស់
សំខាន់: ប្រើពាក្យបញ្ជា man ( % man ) ដើម្បីមើលពីរបៀបប្រើពាក្យបញ្ជាលើកុំព្យូទ័រជាក់លាក់របស់អ្នក។