Single Post

Header

Sunday, September 30, 2012

TCL Interview Questions and Answers – 3

TCL script examples with sample programs
1.TCL Program – eval in tcl
set var {puts “welcome to tcl” }
puts $var
eval $var
o/p:
puts “welcome to tcl”
welcome to tcl
b.#eval
puts “evaluation usage”
set test1 {      ;#should use this block by using eval
set b 10
puts $b }
eval $test1
o/p:
evaluation usage
10
2.TCL Program – upvar in tcl
proc inc name {
upvar $name a
set a [expr $a + 1]
}
set x 20
inc x
puts $x
o/p:
21
3.TCL Program – various puts conditions on variables in tcl
set a 10
puts $a
puts “$a”
puts {$a}
puts a
puts ‘$a’
puts \$a
o/p:
10
10
$a
a
’10′
$a
4.TCL Program – split and join in tcl
split :
set date1 17/01/2011
set list1 [split $date1 /]
puts $list1
set var “”
foreach i $list1 {
lappend var $i }
puts $var
o/p:
17 01 2011
17 01 2011
set date2 “18 01 2012″
set date2 [join $date2 /]
puts $date2
set date3 “/19/11/2009″
set date3 [split $date3 /]
puts $date3
foreach i $date3 {
puts $i }
o/p:
18/01/2012
{} 19 11 2009
19
11
2009
b.should not use “\” in join
set list2 [join "16 02 2012" \]
puts $list2
o/p;
——–
missing close-bracket
while executing
“set list2 [join "16 02 2012" \]
puts $list2
5.TCL Program – string operations in tcl
set string1 “fg”
set string2 “cdeabfg”
puts [string compare $string1 $string2]
puts [string length $string1]
puts [string index $string2 2]
puts [string first $string1 $string2]
puts [string last $string1 $string2]
o/p:
1
2
e
5
5
6.
set var “welcome to \$100 language tcl”
puts $var
o/p:
welcome to $100 language tcl
7.TCL Program – keylset and kelget using tcl
package require Tcl 8.5
package require Thread 2.6
keylset person ID 159 NAME {Venkatesh Reddy}
puts [keylget person ID]
puts [keylget person NAME]
# Create individual users and a list
keylset user1 id 8108 alias venkat   ; # {{id 101} {alias john}}
keylset user2 id 2312 alias praveen  ; # {{id 102} {alias ally}}
set users [list $user1 $user2]
# Show the list
foreach user $users {
puts “ID:    [keylget user id]”
puts “Alias: [keylget user alias]”
puts “”
}
% source keylsetkeylget.tcl
o/p:
159
Venkatesh Reddy
ID:    8108
Alias: venkat
ID:    2312
Alias: praveen
%

No comments:

Post a Comment