GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
array(3) FreeBSD Library Functions Manual array(3)

array - The array library interface

#include <libowfat/array.h>

An allocated array variable keeps track of

  • a (nonzero) pointer to a dynamically allocated region of memory;
  • the number of bytes allocated (always positive); and
  • the number of bytes initialized (between 0 and the number of bytes allocated).

There are two other possibilities for the state of an array variable: unallocated and failed. In both cases, there is no dynamically allocated region of memory.

A new array variable is normally created as a static variable:


#include <libowfat/array.h>


static array x;

At this point it is unallocated. The array library provides various allocation and inspection functions.

A new array variable can also be created dynamically. It must be initialized to all-0, meaning unallocated, before it is given to any of the array functions. It must be returned to the unallocated (or failed) state, for example with array_reset, before it is destroyed. These rules prevent all memory leaks.


array x;


t* p1 = array_allocate(&x,sizeof(t),pos);


t* p2 = array_get(&x,sizeof(t),pos);


t* p3 = array_start(&x);


int64 len = array_length(&x,sizeof(t));


int64 bytes = array_bytes(&x);


array x;


array_truncate(&x,sizeof(t),len);


array_trunc(&x);


array_reset(&x);


array_fail(&x);


array x;
array y;


if (array_equal(&x,&y))
/* arrays are equal... */


array x;
array y;


array_cat(&x,&y);


array_catb(&x,"fnord",5);


array_cats(&x,"fnord");


array_cats0(&x,"fnord"); /* also append the \0 */


array_cat0(&x); /* append \0 */


array_cate(&x,"fnord",1,4); /* append "nor" */

http://cr.yp.to/lib/array.html

array_get(3), array_start(3), array_fail(3)


Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.