Tcl - ตัวแปร
ใน Tcl ไม่มีแนวคิดเรื่องการประกาศตัวแปร เมื่อพบชื่อตัวแปรใหม่ Tcl จะกำหนดตัวแปรใหม่
การตั้งชื่อตัวแปร
ชื่อของตัวแปรสามารถมีอักขระและความยาวได้ คุณสามารถมีช่องว่างสีขาวได้โดยการใส่ตัวแปรไว้ในวงเล็บปีกกา แต่ไม่ต้องการ
คำสั่ง set ใช้สำหรับกำหนดค่าให้กับตัวแปร ไวยากรณ์สำหรับคำสั่ง set คือ
set variableName value
ตัวอย่างของตัวแปรแสดงอยู่ด้านล่าง -
#!/usr/bin/tclsh
set variableA 10
set {variable B} test
puts $variableA
puts ${variable B}
เมื่อดำเนินการโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -
10
test
ดังที่คุณเห็นในโปรแกรมด้านบน $ variableName ถูกใช้เพื่อรับค่าของตัวแปร
การพิมพ์แบบไดนามิก
Tcl เป็นภาษาที่พิมพ์แบบไดนามิก ค่าของตัวแปรสามารถแปลงเป็นประเภทที่ต้องการได้แบบไดนามิกเมื่อต้องการ ตัวอย่างเช่นตัวเลข 5 ที่จัดเก็บเป็นสตริงจะถูกแปลงเป็นตัวเลขเมื่อทำการคำนวณทางคณิตศาสตร์ ดังแสดงด้านล่าง -
#!/usr/bin/tclsh
set variableA "10"
puts $variableA
set sum [expr $variableA +20];
puts $sum
เมื่อดำเนินการโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -
10
30
นิพจน์ทางคณิตศาสตร์
ดังที่คุณเห็นในตัวอย่างข้างต้น expr ถูกใช้เพื่อแสดงนิพจน์ทางคณิตศาสตร์ ความแม่นยำเริ่มต้นของ Tcl คือ 12 หลัก เพื่อให้ได้ผลลัพธ์ทศนิยมเราควรเพิ่มทศนิยมหนึ่งหลักเป็นอย่างน้อย ตัวอย่างง่ายๆอธิบายข้างต้น
#!/usr/bin/tclsh
set variableA "10"
set result [expr $variableA / 9];
puts $result
set result [expr $variableA / 9.0];
puts $result
set variableA "10.0"
set result [expr $variableA / 9];
puts $result
เมื่อดำเนินการโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -
1
1.1111111111111112
1.1111111111111112
ในตัวอย่างข้างต้นคุณจะเห็นสามกรณี ในกรณีแรกเงินปันผลและตัวหารเป็นจำนวนเต็มและเราได้จำนวนเต็มเป็นผลลัพธ์ ในกรณีที่สองตัวหารเพียงอย่างเดียวคือเลขฐานสิบและในกรณีที่สามเงินปันผลเป็นเลขฐานสิบ ทั้งในกรณีที่สองและสามเราจะได้ตัวเลขทศนิยมเป็นผลลัพธ์
ในโค้ดด้านบนคุณสามารถเปลี่ยนความแม่นยำได้โดยใช้ตัวแปรพิเศษ tcl_precision ดังแสดงด้านล่าง -
#!/usr/bin/tclsh
set variableA "10"
set tcl_precision 5
set result [expr $variableA / 9.0];
puts $result
เมื่อดำเนินการโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -
1.1111