[강좌] Tcl/Tk 기초

admin의 아바타

Tk의 예약된 변수

아래의 글로벌 변수는 Tk에서 예약되어 있는 변수입니다. Readonly 만 가능한 변수도 있기 때문에 주의가 필요합니다.

  • tk_library
    Tk 라이브러리의 패스를 지정하고 있습니다.

  • tk_patchLevel
    Tk의 패치 레벨을 지정하고 있습니다.

  • tkPriv
admin의 아바타

Tcl의 외부 커맨드

Tcl은 Tcl 커맨드 이외의 커맨드를 지정하면 외부 커맨드를 실행합니다. 실행된 외부 커맨드의 표준 출력은 Tcl의 커맨드와 마찬가지로 커맨드의 리턴값으로 리턴됩니다.

# grep은 외부 커맨드 입니다.
% grep -n hoge *.c | wc
admin의 아바타

Tcl의 예약된 변수

아래의 글로벌 변수는, Tcl에서 예약되어 있는 변수입니다. Readonly만 가능한 변수도 있기 때문에 주의가 필요합니다.

  • env
    배열의 각 요소는 시스템의 환경변수가 링크되어 있습니다.

  • errorCode
    에러 발생시에 에러 코드를 저장하고 있습니다.

  • errorInfo
admin의 아바타

Tcl의 스코프 (Scope)

Tcl은 프로시져의 스코프(영역)와 변수의 스코프(영역)를 독립적으로 갖고 있습니다. 즉, 프로시져 이름과 변수 이름은 같아도 상관없다는 얘기가 됩니다. 프로시져를 다른 스코프로 분리하고자 한다면, namespace 나 [incr Tcl]을 사용합니다.

프로시져의 스코프

admin의 아바타

Tcl의 리스트

리스트는 Tcl의 편리한 데이타 구조중의 하나입니다. 리스트란 중 괄호 또는 쌍따옴표("")를 사용한 공백으로 구분된 문자열의 집합입니다. 아래는 리스트를 작성한 예제이며, 두 결과는 같습니다.

% set var {사과 귤 바나나}
사과 귤 바나나
% set var "시과 귤 바나나"
시과 귤 바나나

내용묶음