//uncomment this for testing 1D vector32 and "make" int main(void) { int i; char *ptr; vector32 v; vector32_init(&v); vector32_set(&v, 0, "emil"); vector32_set(&v, 1, "hannes"); vector32_set(&v, 2, "lydia"); vector32_set(&v, 3, "olle"); vector32_set(&v, 4, "erik"); printf("first round:\n"); for (i = 0; i < vector32_size(&v); i++) { printf("%s\n", (char*) vector32_get(&v, i)); } vector32_delete(&v, 1); vector32_delete(&v, 3); printf("second round:\n"); for (i = 0; i < vector32_size(&v); i++) { if ((ptr = (char*) vector32_get(&v, i)) != NULL) printf("%s\n", ptr); } vector32_free(&v); return 0; }
vector32_t *vector32_new(size_t size, uint32_t value) { vector32_t *p = png_alloc_malloc(sizeof (vector32_t)); vector32_init(p); if (size && !vector32_resizev(p, size, value)) return NULL; return p; }