ពាក្យបញ្ជាលីនុច / យូនីក: expr

ឈ្មោះ

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 ។ បើមិនដូច្នោះទេលទ្ធផលគឺតម្លៃនៃ zx operand ត្រូវមានតម្លៃជាលេខ។

សូមមើលសៀវភៅដៃ C សម្រាប់ព័ត៌មានលម្អិតបន្ថែមអំពីលទ្ធផលដែលបានបង្កើតដោយប្រតិបត្តិករនីមួយៗ។ ក្រុម ប្រតិបត្តិករប្រព័ន្ធគោលពីរ ទាំងអស់ពីឆ្វេងទៅស្តាំនៅក្នុងកម្រិតអាទិភាពដូចគ្នា។ ឧទាហរណ៍ពាក្យបញ្ជា

expr 4 * 2 <7

ត្រឡប់ 0 ។

&& , || , និង ?: ប្រតិបត្តិករមានការវាយតម្លៃខ្ជិលដូចនៅក្នុង C ដែលមានន័យថាតៃវ៉ាន់មិនត្រូវបានគេវាយតម្លៃប្រសិនបើពួកគេមិនចាំបាច់ដើម្បីកំណត់លទ្ធផល។ ឧទាហរណ៍ក្នុងពាក្យបញ្ជា

expr {$ v? [a]: [ខ]}

មានតែមួយនៃ [a][b] នឹងត្រូវបានវាយតម្លៃអាស្រ័យលើតម្លៃនៃ $ v ។ ចំណាំ, ទោះជាយ៉ាងណាក៏ដោយនេះគ្រាន់តែជាការពិតប្រសិនបើកន្សោមទាំងមូលត្រូវបានដាក់ក្នុងដង្កៀប។ បើមិនដូច្នេះទេកម្មវិធីវិភាគ Tcl នឹងវាយតម្លៃទាំង [a] និង [b] មុនពេលប្រើពាក្យបញ្ជា expr

មុខងារគណិតវិទ្យា

Tcl គាំទ្រមុខងារគណិតវិទ្យាដូចខាងក្រោម:

កំណត់ហេតុ អក្ខរាវិរុទ្ធអ័ក្សក្រម ពីរដង ឡូហ្គោ 10 ម៉ោង

abs ( arg )

ត្រឡប់តម្លៃដាច់ខាតនៃ argArg អាចជាចំនួនគត់វិជ្ជមានឬអណ្តែតហើយលទ្ធផលត្រូវបានត្រឡប់ក្នុងទំរង់ដូចគ្នា។

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 )

ត្រឡប់លោការីតធម្មជាតិនៃ argArg ត្រូវតែជាតម្លៃវិជ្ជមាន។

log10 ( arg )

ត្រឡប់គោល 10 លោការីតគោល។ Arg ត្រូវតែជាតម្លៃវិជ្ជមាន។

pow ( x, y )

គណនាតម្លៃនៃ x ដែល បានលើកឡើងទៅថាមពល y ។ ប្រសិនបើ x ជាអវិជ្ជមាន y ត្រូវតែជាចំនួនគត់។

rand ()

ត្រឡប់លេខទសភាគពីសូន្យទៅតិចជាងមួយឬក្នុងលក្ខខណ្ឌគណិតវិទ្យាជួរ [0,1] ។ គ្រាប់ពូជនេះចេញមកពីនាឡិកាខាងក្នុងរបស់ម៉ាស៊ីនឬអាចត្រូវបានកំណត់ដោយដៃដោយប្រើមុខងារ srand ។

ជុំ ( arg )

ប្រសិនបើអា រ៉េ ជាតម្លៃចំនួនគំនូរ, ត្រឡប់ អាគុយម៉ង់ , បើមិនដូច្នេះទេបម្លែង អាគុយ ទៅចំនួនគត់ដោយបង្គត់និងត្រឡប់តម្លៃបម្លែង។

sin ( arg )

ត្រឡប់ស៊ីនុសនៃ arg ដែលបានវាស់ជារ៉ាដ្យង់។

កំណើត ( អាគុយ )

ត្រឡប់ស៊ីនុសអ៊ីពែរបូលនៃ arg ។ ប្រសិនបើលទ្ធផលបណ្តាលឱ្យហូរហៀរកំហុសនឹងត្រូវបានត្រឡប់។

sqrt ( arg )

ត្រឡប់ឫសការេនៃ argArg ត្រូវតែមិនអវិជ្ជមាន។

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 ) ដើម្បីមើលពីរបៀបប្រើពាក្យបញ្ជាលើកុំព្យូទ័រជាក់លាក់របស់អ្នក។