Annotation of libaitio/example/test_sarray.c, revision 1.3
1.2 misho 1: #include <stdio.h>
2: #include <string.h>
3: #include <aitio.h>
4:
5: int
6: main(int argc, char **argv)
7: {
8: sarr_t *a = NULL;
1.3 ! misho 9: array_t *ar;
! 10: int i;
1.2 misho 11: void *d = "MEOWeoeoeoeoe!!!";
12:
13: a = io_sarrInit(10, 4);
14: if (!a) {
15: printf("Error:: #%d - %s\n", io_GetErrno(), io_GetError());
16: return 1;
17: }
18:
19: switch (argc) {
20: case 4:
21: io_sarrSet(a, 10, argv[3]);
22: case 3:
23: io_sarrSet(a, 6, argv[2]);
24: io_sarrSet(a, 4, argv[2]);
25: case 2:
26: io_sarrSet(a, 3, argv[1]);
27: io_sarrSet(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: io_sarr(a, 1, char*), io_sarr(a, 2, char*),
32: io_sarr(a, 3, char*), io_sarr(a, 4, char*),
33: io_sarr(a, 6, char*), io_sarr(a, 10, char*));
34: printf(">>> array size=%d\n", io_sarrSize(a));
35:
36: io_sarrDel(a, 6);
37: io_sarrDel(a, 9);
38: io_sarrDel(a, 10);
39: printf(">>> a[1]=%s a[2]=%s a[3]=%s a[4]=%s a[6]=%s a[10]=%s\n",
40: io_sarr(a, 1, char*), io_sarr(a, 2, char*),
41: io_sarr(a, 3, char*), io_sarr(a, 4, char*),
42: io_sarr(a, 6, char*), io_sarr(a, 10, char*));
43: printf(">>> array size=%d\n", io_sarrSize(a));
44:
45: io_sarrSet(a, 240, d);
46: printf(">>> array size=%d s[240]=%s\n", io_sarrSize(a), io_sarrGet2(a, 240));
47: io_sarrSet(a, 240, d);
48: printf(">>> array size=%d s[240]=%s\n", io_sarrSize(a), io_sarr(a, 240, char*));
49: printf(">>> array size=%d s[240]=%s\n", io_sarrSize(a), io_sarrGet2(a, 240));
50:
51: io_sarrVacuum(a);
52: printf("vacuum:: a[1]=%s a[2]=%s a[3]=%s a[4]=%s a[6]=%s a[10]=%s\n",
53: io_sarr(a, 1, char*), io_sarr(a, 2, char*),
54: io_sarr(a, 3, char*), io_sarr(a, 4, char*),
55: io_sarr(a, 6, char*), io_sarr(a, 10, char*));
56: printf("vacuum:: array size=%d\n", io_sarrSize(a));
57:
58: io_sarrGrow(a, 20);
59: printf("grow:: array size=%d\n", io_sarrSize(a));
60: printf("grow:: a[1]=%s a[2]=%s a[3]=%s a[4]=%s a[6]=%s a[10]=%s\n",
61: io_sarr(a, 1, char*), io_sarr(a, 2, char*),
62: io_sarr(a, 3, char*), io_sarr(a, 4, char*),
63: io_sarr(a, 6, char*), io_sarr(a, 10, char*));
64:
65: io_sarrGrow(a, 1);
66: io_sarrGrow(a, 2);
67: printf("shrink:: array size=%d\n", io_sarrSize(a));
68: printf("shrink:: a[1]=%s a[2]=%s\n", io_sarr(a, 1, char*), io_sarr(a, 2, char*));
69:
1.3 ! misho 70: ar = io_sarr2array(&a, 1);
! 71: if (!ar) {
! 72: printf("Error:: in convert sarr2array #%d - %s\n", io_GetErrno(), io_GetError());
! 73: } else
! 74: for (i = 0; i < io_arraySize(ar); i++)
! 75: printf("arrGet(%d)=%s\n", i, io_array(ar, i, char*));
! 76: a = io_array2sarr(&ar, 4, 0);
! 77: if (!a) {
! 78: printf("Error:: in convert array2sarr #%d - %s\n", io_GetErrno(), io_GetError());
! 79: } else
! 80: for (i = 0; i < io_sarrSize(a); i++)
! 81: printf("sarrGet(%d)=%s\n", i, io_sarr(a, i + 1, char*));
! 82:
! 83: io_arrayDestroy(&ar);
1.2 misho 84: io_sarrDestroy(&a);
85: return 0;
86: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>