Annotation of libelwix/example/test_array.c, revision 1.1.1.1

1.1       misho       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>