Tcl - ตัวแปรพิเศษ

ใน Tcl เราจำแนกตัวแปรบางตัวเป็นตัวแปรพิเศษและมีการใช้งาน / ฟังก์ชันที่กำหนดไว้ล่วงหน้า รายการตัวแปรพิเศษแสดงอยู่ด้านล่าง

ซีเนียร์ ตัวแปรพิเศษและคำอธิบาย
1

argc

หมายถึงอาร์กิวเมนต์บรรทัดคำสั่งจำนวนหนึ่ง

2

argv

หมายถึงรายการที่มีอาร์กิวเมนต์บรรทัดคำสั่ง

3

argv0

หมายถึงชื่อไฟล์ของไฟล์ที่กำลังตีความหรือชื่อที่เราเรียกใช้สคริปต์

4

env

ใช้สำหรับแทนอาร์เรย์ขององค์ประกอบที่เป็นตัวแปรสภาพแวดล้อม

5

errorCode

ระบุรหัสข้อผิดพลาดสำหรับข้อผิดพลาด Tcl ล่าสุด

6

errorInfo

จัดเตรียมการติดตามสแต็กสำหรับข้อผิดพลาด Tcl ล่าสุด

7

tcl_interactive

ใช้เพื่อสลับระหว่างโหมดโต้ตอบและโหมดไม่โต้ตอบโดยตั้งค่านี้เป็น 1 และ 0 ตามลำดับ

8

tcl_library

ใช้สำหรับตั้งค่าตำแหน่งของไลบรารี Tcl มาตรฐาน

9

tcl_pkgPath

แสดงรายการไดเร็กทอรีที่โดยทั่วไปมีการติดตั้งแพ็กเกจ

10

tcl_patchLevel

หมายถึงระดับแพตช์ปัจจุบันของล่าม Tcl

11

tcl_platform

ใช้สำหรับแสดงอาร์เรย์ขององค์ประกอบที่มีออบเจ็กต์รวมถึง byteOrder, machine, osVersion, platform และ os

12

tcl_precision

หมายถึงความแม่นยำเช่นจำนวนหลักที่จะคงไว้เมื่อแปลงเป็นตัวเลขทศนิยมเป็นสตริง ค่าเริ่มต้นคือ 12

13

tcl_prompt1

หมายถึงพรอมต์หลัก

14

tcl_prompt2

หมายถึงพรอมต์รองที่มีคำสั่งที่ไม่ถูกต้อง

15

tcl_rcFileName

จัดเตรียมไฟล์เริ่มต้นเฉพาะสำหรับผู้ใช้

16

tcl_traceCompile

ใช้สำหรับควบคุมการติดตามของการคอมไพล์ bytecode ใช้ 0 สำหรับไม่มีเอาต์พุต 1 สำหรับสรุปและ 2 สำหรับรายละเอียด

17

tcl_traceExec

ใช้สำหรับควบคุมการติดตามของการดำเนินการ bytecode ใช้ 0 สำหรับไม่มีเอาต์พุต 1 สำหรับสรุปและ 2 สำหรับรายละเอียด

18

tcl_version

ส่งคืนเวอร์ชันปัจจุบันของตัวแปล Tcl

ตัวแปรพิเศษข้างต้นมีความหมายพิเศษสำหรับล่าม Tcl

ตัวอย่างการใช้ตัวแปรพิเศษ Tcl

มาดูตัวอย่างตัวแปรพิเศษกัน

รุ่น Tcl

#!/usr/bin/tclsh

puts $tcl_version

เมื่อคุณรันโปรแกรมคุณจะได้ผลลัพธ์ที่คล้ายกันดังแสดงด้านล่าง -

8.6

เส้นทางสิ่งแวดล้อม Tcl

#!/usr/bin/tclsh

puts $env(PATH)

เมื่อคุณรันโปรแกรมคุณจะได้ผลลัพธ์ที่คล้ายกันดังแสดงด้านล่าง -

/home/cg/root/GNUstep/Tools:/usr/GNUstep/Local/Tools:/usr/GNUstep/
System/Tools:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/webmaster/.local/bin:/
home/webmaster/bin:/usr/local/scriba/bin:/usr/local/smlnj/
bin:/usr/local/bin/std:/usr/local/bin/extra:/usr/local/fantom/bin:/usr/
local/dart/bin:/usr/bin:/usr/local/bin:/usr/local/sbin:/usr/sbin:/opt/mono/
bin:/opt/mono/lib/mono/4.5:/usr/local/bin:.:/usr/libexec/sdcc:/usr/local/
icon-v950/bin:/usr/local/mozart/bin:/opt/Pawn/bin:/opt/jdk1.7.0_75/bin:/
opt/jdk1.7.0_75/jre/bin:/opt/pash/Source/PashConsole/bin/Debug/

เส้นทางแพ็คเกจ Tcl

#!/usr/bin/tclsh

puts $tcl_pkgPath

เมื่อคุณรันโปรแกรมคุณจะได้ผลลัพธ์ที่คล้ายกันดังแสดงด้านล่าง -

/usr/lib64/tcl8.6 /usr/share/tcl8.6 /usr/lib64/tk8.6 /usr/share/tk8.6

ห้องสมุด Tcl

#!/usr/bin/tclsh

puts $tcl_library

เมื่อคุณรันโปรแกรมคุณจะได้ผลลัพธ์ที่คล้ายกันดังแสดงด้านล่าง -

/usr/share/tcl8.6

ระดับแพทช์ Tcl

#!/usr/bin/tclsh

puts $tcl_patchLevel

เมื่อคุณรันโปรแกรมคุณจะได้ผลลัพธ์ที่คล้ายกันดังแสดงด้านล่าง -

8.6.6

Tcl แม่นยำ

#!/usr/bin/tclsh

puts $tcl_precision

เมื่อคุณรันโปรแกรมคุณจะได้ผลลัพธ์ที่คล้ายกันดังแสดงด้านล่าง -

0

ไฟล์เริ่มต้น Tcl

#!/usr/bin/tclsh

puts $tcl_rcFileName

เมื่อคุณรันโปรแกรมคุณจะได้ผลลัพธ์ที่คล้ายกันดังแสดงด้านล่าง -

~/.tclshrc