1: #include <stdio.h>
2: #include <string.h>
3: #include <elwix.h>
4:
5: int
6: main(int argc, char **argv)
7: {
8: array_t *a = NULL;
9: void *d = "MEOWeoeoeoeoe!!!";
10:
11: a = array_Init(0);
12: if (!a) {
13: printf("Error:: #%d - %s\n", elwix_GetErrno(), elwix_GetError());
14: return 1;
15: }
16: array_Elem(a, 5, d);
17: printf("si=%d\n", array_Size(a));
18: array_Destroy(&a);
19:
20: a = array_Init(10);
21: if (!a) {
22: printf("Error:: #%d - %s\n", elwix_GetErrno(), elwix_GetError());
23: return 1;
24: }
25:
26: switch (argc) {
27: case 4:
28: array_Set(a, 5, argv[3]);
29: case 3:
30: array_Set(a, 4, argv[2]);
31: case 2:
32: array_Set(a, 1, argv[1]);
33: }
34:
35: printf("d=%p push=%d\n", d, array_Push(a, &d, 0));
36: printf("d=%p pop=%d\n", d, array_Pop(a, &d, 0));
37: printf("last=%d ", array_Last(a));
38: printf("d=%p pop=%d\n", d, array_Pop(a, &d, 1));
39: printf("last=%d ", array_Last(a));
40:
41: printf(">>> a[0]=%s a[1]=%s a[2]=%s a[3]=%s a[4]=%s a[5]=%s\n",
42: array(a, 0, char*), array(a, 1, char*),
43: array(a, 2, char*), array(a, 3, char*),
44: array(a, 4, char*), array(a, 5, char*));
45: printf(">>> array really len=%d array size=%d\n", array_Len(a), array_Size(a));
46:
47: array_Vacuum(a, VACUUM_BETWEEN);
48: printf("vacuum:: a[0]=%s a[1]=%s a[2]=%s a[3]=%s a[4]=%s a[5]=%s\n",
49: array(a, 0, char*), array(a, 1, char*),
50: array(a, 2, char*), array(a, 3, char*),
51: array(a, 4, char*), array(a, 5, char*));
52:
53: printf("vacuum:: array really len=%d array size=%d\n", array_Len(a), array_Size(a));
54:
55: array_Grow(a, array_Len(a) + 4, 0);
56: printf("grow:: array really len=%d array size=%d\n", array_Len(a), array_Size(a));
57: printf("grow:: a[0]=%s a[1]=%s a[2]=%s a[3]=%s a[4]=%s a[5]=%s\n",
58: array(a, 0, char*), array(a, 1, char*),
59: array(a, 2, char*), /*array(a, 3, char*), */ NULL,
60: /*array(a, 4, char*), array(a, 5, char*)*/ NULL, NULL);
61:
62: array_Grow(a, 1, 0);
63: array_Grow(a, 2, 0);
64: printf("shrink:: array really len=%d array size=%d\n", array_Len(a), array_Size(a));
65: printf("shrink:: a[0]=%s a[1]=%s\n", array(a, 0, char*), array(a, 1, char*));
66:
67: array_Destroy(&a);
68: return 0;
69: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>