
A TCL array is an associative array. i.e. there is an (un-ordered) key-value pair in a TCL array. A simple list of elements as in a perl array or a C array is called a ‘list’ in TCL. If you want to pass an array, which s essentially a collection of variables, to a procedure in TCL, you can use the command `upvar` as explained earlier. You are passing a name to the procedure and then using it to access the array at the previous level.
proc passArray {argArray} { upvar $argArray a puts "$a(Tran), $a(Cap)" puts [array names a] } set arrayA(Tran) "0.1" set arrayA(Cap) "0.2" passArray arrayA
You should see the results:
`0.1, 0.2`
`Cap Tran`
While we are at it, let’s see the difference with passing a list. Here we pass a variable to the procedure.
proc passList {argList} { puts $argList } set listA {a b c} passList $listA
hi mam
can you please make a post on some examples of tcl scripts in EDA tools
thank you