File:
[ELWIX - Embedded LightWeight unIX -] /
libelwix /
example /
test_sarray.c
Revision
1.2:
download - view:
text,
annotated -
select for diffs -
revision graph
Mon Apr 15 10:42:26 2024 UTC (10 months, 1 week ago) by
misho
Branches:
MAIN
CVS tags:
elwix6_7,
elwix6_6,
elwix6_5,
elwix6_4,
elwix6_3,
elwix6_2,
elwix6_1,
elwix5_12,
HEAD,
ELWIX6_6,
ELWIX6_5,
ELWIX6_4,
ELWIX6_2,
ELWIX6_1,
ELWIX6_0,
ELWIX5_11
Version 5.11
1: #include <stdio.h>
2: #include <string.h>
3: #include <elwix.h>
4:
5: int
6: main(int argc, char **argv)
7: {
8: sarr_t *a = NULL;
9: array_t *ar;
10: int i;
11: void *d = "MEOWeoeoeoeoe!!!";
12:
13: a = sarr_Init(10, 4);
14: if (!a) {
15: printf("Error:: #%d - %s\n", elwix_GetErrno(), elwix_GetError());
16: return 1;
17: }
18:
19: switch (argc) {
20: case 4:
21: sarr_Set(a, 10, argv[3]);
22: case 3:
23: sarr_Set(a, 6, argv[2]);
24: sarr_Set(a, 4, argv[2]);
25: case 2:
26: sarr_Set(a, 3, argv[1]);
27: sarr_Set(a, 1, argv[1]);
28: }
29:
30: printf(">>> a[1]=%s a[2]=%s a[3]=%s a[4]=%s a[6]=%s a[10]=%s\n",
31: sarr(a, 1, char*), sarr(a, 2, char*),
32: sarr(a, 3, char*), sarr(a, 4, char*),
33: sarr(a, 6, char*), sarr(a, 10, char*));
34: printf(">>> array size=%d\n", sarr_Size(a));
35:
36: sarr_Del(a, 6);
37: sarr_Del(a, 9);
38: sarr_Del(a, 10);
39: printf(">>> a[1]=%s a[2]=%s a[3]=%s a[4]=%s a[6]=%s a[10]=%s\n",
40: sarr(a, 1, char*), sarr(a, 2, char*),
41: sarr(a, 3, char*), sarr(a, 4, char*),
42: sarr(a, 6, char*), sarr(a, 10, char*));
43: printf(">>> array size=%d\n", sarr_Size(a));
44:
45: sarr_Set(a, 240, d);
46: printf(">>> array size=%d s[240]=%s\n", sarr_Size(a), (char*) sarr_Get2(a, 240));
47: sarr_Set(a, 240, d);
48: printf(">>> array size=%d s[240]=%s\n", sarr_Size(a), sarr(a, 240, char*));
49: printf(">>> array size=%d s[240]=%s\n", sarr_Size(a), (char*) sarr_Get2(a, 240));
50:
51: sarr_Vacuum(a);
52: printf("vacuum:: a[1]=%s a[2]=%s a[3]=%s a[4]=%s a[6]=%s a[10]=%s\n",
53: sarr(a, 1, char*), sarr(a, 2, char*),
54: sarr(a, 3, char*), sarr(a, 4, char*),
55: sarr(a, 6, char*), sarr(a, 10, char*));
56: printf("vacuum:: array size=%d\n", sarr_Size(a));
57:
58: sarr_Grow(a, 20);
59: printf("grow:: array size=%d\n", sarr_Size(a));
60: printf("grow:: a[1]=%s a[2]=%s a[3]=%s a[4]=%s a[6]=%s a[10]=%s\n",
61: sarr(a, 1, char*), sarr(a, 2, char*),
62: sarr(a, 3, char*), sarr(a, 4, char*),
63: sarr(a, 6, char*), sarr(a, 10, char*));
64:
65: sarr_Grow(a, 1);
66: sarr_Grow(a, 2);
67: printf("shrink:: array size=%d\n", sarr_Size(a));
68: printf("shrink:: a[1]=%s a[2]=%s\n", sarr(a, 1, char*), sarr(a, 2, char*));
69:
70: ar = sarr_sarr2array(&a, 1);
71: if (!ar) {
72: printf("Error:: in convert sarr2array #%d - %s\n", elwix_GetErrno(), elwix_GetError());
73: } else
74: for (i = 0; i < array_Size(ar); i++)
75: printf("arrGet(%d)=%s\n", i, array(ar, i, char*));
76: //sarr_Destroy(&a);
77:
78: a = sarr_array2sarr(&ar, 4, 0);
79: if (!a) {
80: printf("Error:: in convert array2sarr #%d - %s\n", elwix_GetErrno(), elwix_GetError());
81: } else
82: for (i = 0; i < sarr_Size(a); i++)
83: printf("sarrGet(%d)=%s\n", i, sarr(a, i + 1, char*));
84:
85: array_Destroy(&ar);
86: sarr_Destroy(&a);
87: return 0;
88: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>