File:
[ELWIX - Embedded LightWeight unIX -] /
libelwix /
example /
test_array.c
Revision
1.2:
download - view:
text,
annotated -
select for diffs -
revision graph
Thu May 30 09:07:33 2013 UTC (11 years, 4 months ago) by
misho
Branches:
MAIN
CVS tags:
elwix5_9,
elwix5_8,
elwix5_7,
elwix5_6,
elwix5_5,
elwix5_4,
elwix5_3,
elwix5_2,
elwix5_11,
elwix5_10,
elwix5_1,
elwix5_0,
elwix4_9,
elwix4_8,
elwix4_7,
elwix4_6,
elwix4_5,
elwix4_4,
elwix4_3,
elwix4_26,
elwix4_25,
elwix4_24,
elwix4_23,
elwix4_22,
elwix4_21,
elwix4_20,
elwix4_2,
elwix4_19,
elwix4_18,
elwix4_17,
elwix4_16,
elwix4_15,
elwix4_14,
elwix4_13,
elwix4_12,
elwix4_11,
elwix4_10,
elwix4_1,
elwix3_9,
elwix3_8,
elwix3_7,
elwix3_6,
elwix3_5,
elwix3_4,
elwix3_3,
elwix3_2,
elwix3_1,
elwix3_0,
elwix2_9,
elwix2_8,
elwix2_7,
elwix2_6,
elwix2_5,
elwix2_4,
elwix2_3,
elwix2_2,
elwix2_1,
elwix2_0,
elwix1_9,
elwix1_8,
elwix1_7,
elwix1_6,
elwix1_5,
elwix1_4,
HEAD,
ELWIX5_9,
ELWIX5_8,
ELWIX5_7,
ELWIX5_6,
ELWIX5_5,
ELWIX5_4,
ELWIX5_3,
ELWIX5_2,
ELWIX5_10,
ELWIX5_1,
ELWIX5_0,
ELWIX4_9,
ELWIX4_8,
ELWIX4_7,
ELWIX4_6,
ELWIX4_5,
ELWIX4_4,
ELWIX4_3,
ELWIX4_26,
ELWIX4_25,
ELWIX4_24,
ELWIX4_23,
ELWIX4_22,
ELWIX4_21,
ELWIX4_20,
ELWIX4_2,
ELWIX4_19,
ELWIX4_18,
ELWIX4_17,
ELWIX4_16,
ELWIX4_15,
ELWIX4_14,
ELWIX4_13,
ELWIX4_12,
ELWIX4_11,
ELWIX4_10,
ELWIX4_1,
ELWIX4_0,
ELWIX3_8,
ELWIX3_7,
ELWIX3_6,
ELWIX3_5,
ELWIX3_4,
ELWIX3_3,
ELWIX3_2,
ELWIX3_1,
ELWIX3_0,
ELWIX2_9,
ELWIX2_8,
ELWIX2_7,
ELWIX2_6,
ELWIX2_5,
ELWIX2_4,
ELWIX2_3,
ELWIX2_2,
ELWIX2_1,
ELWIX2_0,
ELWIX1_9,
ELWIX1_8,
ELWIX1_7,
ELWIX1_6,
ELWIX1_5,
ELWIX1_4,
ELWIX1_3
version 1.3
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 *s, *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_Pop(a, NULL, 0);
17: array_Pop(a, NULL, 0);
18: array_Pop(a, NULL, 0);
19: printf("si=%d l=%d\n", array_Size(a), array_Last(a));
20: array_Push(a, d, 0);
21: printf("push>si=%d l=%d %s\n", array_Size(a), array_Last(a), array_Get(a, 0));
22: array_Pop(a, &s, 42);
23: printf("pop>si=%d l=%d %s\n", array_Size(a), array_Last(a), s);
24: array_Push(a, d, 0);
25: printf("push>si=%d l=%d %s\n", array_Size(a), array_Last(a), array_Get(a, 0));
26: array_Elem(a, 5, d);
27: printf("si=%d l=%d\n", array_Size(a), array_Last(a));
28: array_Pop(a, &s, 42);
29: printf("pop>si=%d l=%d %s\n", array_Size(a), array_Last(a), s);
30: array_Pop(a, NULL, 0);
31: array_Pop(a, NULL, 0);
32: printf("pops>si=%d l=%d get=%s\n", array_Size(a), array_Last(a), array_Get(a, 5));
33: array_Push(a, d, 0);
34: printf("push>si=%d l=%d\n", array_Size(a), array_Last(a));
35: array_Destroy(&a);
36:
37: a = array_Init(10);
38: if (!a) {
39: printf("Error:: #%d - %s\n", elwix_GetErrno(), elwix_GetError());
40: return 1;
41: }
42:
43: switch (argc) {
44: case 4:
45: array_Set(a, 5, argv[3]);
46: case 3:
47: array_Set(a, 4, argv[2]);
48: case 2:
49: array_Set(a, 1, argv[1]);
50: }
51:
52: printf("d=%p push=%d\n", d, array_Push(a, &d, 0));
53: printf("d=%p pop=%d\n", d, array_Pop(a, &d, 0));
54: printf("last=%d ", array_Last(a));
55: printf("d=%p pop=%d\n", d, array_Pop(a, &d, 1));
56: printf("last=%d ", array_Last(a));
57:
58: printf(">>> a[0]=%s a[1]=%s a[2]=%s a[3]=%s a[4]=%s a[5]=%s\n",
59: array(a, 0, char*), array(a, 1, char*),
60: array(a, 2, char*), array(a, 3, char*),
61: array(a, 4, char*), array(a, 5, char*));
62: printf(">>> array really len=%d array size=%d\n", array_Len(a), array_Size(a));
63:
64: array_Vacuum(a, VACUUM_BETWEEN);
65: printf("vacuum:: a[0]=%s a[1]=%s a[2]=%s a[3]=%s a[4]=%s a[5]=%s\n",
66: array(a, 0, char*), array(a, 1, char*),
67: array(a, 2, char*), array(a, 3, char*),
68: array(a, 4, char*), array(a, 5, char*));
69:
70: printf("vacuum:: array really len=%d array size=%d\n", array_Len(a), array_Size(a));
71:
72: array_Grow(a, array_Len(a) + 4, 0);
73: printf("grow:: array really len=%d array size=%d\n", array_Len(a), array_Size(a));
74: printf("grow:: a[0]=%s a[1]=%s a[2]=%s a[3]=%s a[4]=%s a[5]=%s\n",
75: array(a, 0, char*), array(a, 1, char*),
76: array(a, 2, char*), /*array(a, 3, char*), */ NULL,
77: /*array(a, 4, char*), array(a, 5, char*)*/ NULL, NULL);
78:
79: array_Grow(a, 1, 0);
80: array_Grow(a, 2, 0);
81: printf("shrink:: array really len=%d array size=%d\n", array_Len(a), array_Size(a));
82: printf("shrink:: a[0]=%s a[1]=%s\n", array(a, 0, char*), array(a, 1, char*));
83:
84: array_Destroy(&a);
85: return 0;
86: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>