home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 14 / CDACTUAL.iso / cdactual / demobin / share / program / c / XXALLOC.ZIP / README < prev    next >
Encoding:
Text File  |  1989-12-26  |  1.7 KB  |  35 lines

  1. xxalloc is a family of routines for dynamic array manipulation in one,
  2. two and three dimensions.  Routines are included for allocation,
  3. initialization, printing, renumbering, and freeing both arrays of
  4. structures and arrays of simple types.  Since the "edge-vector" approach
  5. is used for two and three dimensional arrays, this set of routines
  6. allows for the development of reusable subroutine libraries without
  7. regard to some "maximum" dimension.  Both positive and negative indices
  8. are allowed. 
  9.  
  10. When I converted to C several years ago after my first large program in
  11. FORTRAN, the first thing I wanted to do was to have adjustable
  12. multi-dimensional arrays.  This can be achieved in C (sort of, the array
  13. dimensions are fixed) through the use of pointers (the so called
  14. "edge-vector" approach, see also K&R p.  110).  I then added routines
  15. for manipulating structures and routines for renumbering the indices,
  16. initializing, and printing.  These routines also solve the problem of
  17. not being able to have 2D arrays greater than 64k on machines with 16
  18. bit addresses (ie.  PC's). 
  19.  
  20. Installation instructions are in the makefile.  A test program is
  21. included to exercise most of the package.  I have compiled this package
  22. on many machines (SYS5, BSD, MSDOS) without a hitch.  The man page uses
  23. some abbreviation to save space since there are actually 109 functions
  24. in this package. 
  25.  
  26. --
  27. Harold G. Walters                 Internet: walters@ce.okstate.edu
  28. School of Civil Engineering       Uucp: {cbosgd, ihnp4, uiucdcs}
  29. Oklahoma State University                   !okstate!osubem!walters
  30. Stillwater, OK 74078 "If all you have is a hammer, everything looks like a nail"
  31.  
  32.  
  33.  
  34.  
  35.