Download Latest Version libcont-2.4.6.zip (708.4 kB)
Email in envelope

Get an email when there's a new version of libcontc

Home
Name Modified Size InfoDownloads / Week
libcont-2.4.6.zip 2014-04-12 708.4 kB
libcont-2.4.3.zip 2014-01-21 706.1 kB
README 2013-11-11 1.6 kB
Totals: 3 Items   1.4 MB 0
<make>
 + `cd' to the libcont directory.
 + type `./configure' to configure the package for your system.
 + type `make' to compile the package.
 + type `make install' to install the package (root).
 + update shared library links (ldconfig).
 + done. libcont is now available.
 + see INSTALL for more options and information.

<containers>
 + array_t  flat array.
 + btree_t  binary tree.
 + deque_t  double ended queue.
 + dlist_t  doubly linked list.
 + hasht_t  hash table.
 + prioq_t  max priority queue.
 + queue_t  queue.
 + stack_t  stack.

<extensions>
 + strmap_t     string associative map.
 + uo_strmap_t  string associative map (unordered).

<note>
 the algo family of functions are designed to be stand alone, they do not use
 any C99 features and can be applied to any flat array type, however, most of
 the containers use C99 features.

<note>
 these are pretty easy to use once you get used to dealing with everything as
 pointers. storing data is pretty straight forward. storing pointers requires
 a little more attention since the compiler won't issue an error when passing
 a pointer by object instead of address. in any case there will always be one
 additional level of indirection regardless of the type being stored.

<example>
 int i;
 array_push_back(&a, &i);
 assert(i == *(int*) array_back(&a));

 int* pi;
 array_push_back(&a, &pi); /* address of pointer. */
 assert(pi == *(int**) array_back(&a));

<references>
 + sgi standard template library.
 + Introduction to Algorithms - Thomas H. Cormen et al. 2nd ed.
 + GNU linux.

Source: README, updated 2013-11-11