parray.tcl
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:1k
源码类别:

通讯编程

开发平台:

Visual C++

  1. # parray:
  2. # Print the contents of a global array on stdout.
  3. #
  4. # RCS: @(#) $Id: parray.tcl,v 1.3 1998/09/14 18:40:03 stanton Exp $
  5. #
  6. # Copyright (c) 1991-1993 The Regents of the University of California.
  7. # Copyright (c) 1994 Sun Microsystems, Inc.
  8. #
  9. # See the file "license.terms" for information on usage and redistribution
  10. # of this file, and for a DISCLAIMER OF ALL WARRANTIES.
  11. #
  12. proc parray {a {pattern *}} {
  13.     upvar 1 $a array
  14.     if {![array exists array]} {
  15. error ""$a" isn't an array"
  16.     }
  17.     set maxl 0
  18.     foreach name [lsort [array names array $pattern]] {
  19. if {[string length $name] > $maxl} {
  20.     set maxl [string length $name]
  21. }
  22.     }
  23.     set maxl [expr {$maxl + [string length $a] + 2}]
  24.     foreach name [lsort [array names array $pattern]] {
  25. set nameString [format %s(%s) $a $name]
  26. puts stdout [format "%-*s = %s" $maxl $nameString $array($name)]
  27.     }
  28. }