1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
# file: runme.tcl
catch { load ./example[info sharedlibextension] example}
# Try to set the values of some global variables
set ivar 42
set svar -31000
set lvar 65537
set uivar 123456
set usvar 61000
set ulvar 654321
set scvar -13
set ucvar 251
set cvar "S"
set fvar 3.14159
set dvar 2.1828
set strvar "Hello World"
set iptrvar [new_int 37]
set ptptr [new_Point 37 42]
set name "Bill"
# Now print out the values of the variables
puts "Variables (values printed from Tcl)"
puts "ivar = $ivar"
puts "svar = $svar"
puts "lvar = $lvar"
puts "uivar = $uivar"
puts "usvar = $usvar"
puts "ulvar = $ulvar"
puts "scvar = $scvar"
puts "ucvar = $ucvar"
puts "fvar = $fvar"
puts "dvar = $dvar"
puts "cvar = $cvar"
puts "strvar = $strvar"
puts "cstrvar = $cstrvar"
puts "iptrvar = $iptrvar"
puts "name = $name"
puts "ptptr = $ptptr [Point_print $ptptr]"
puts "pt = $pt [Point_print $pt]"
puts "\nVariables (values printed from C)"
print_vars
puts "\nNow I'm going to try and modify some read only variables";
puts " Tring to set 'path'";
if { [catch {
set path "Whoa!"
puts "Hey, what's going on?!?! This shouldn't work"
}]} {
puts "Good."
}
puts " Trying to set 'status'";
if { [catch {
set status 0
puts "Hey, what's going on?!?! This shouldn't work"
}]} {
puts "Good."
}
puts "\nI'm going to try and update a structure variable.\n"
set pt $ptptr
puts "The new value is"
pt_print
puts "You should see the value [Point_print $ptptr]"
|