You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

34 line
821B

  1. #ifndef VECTOR_H
  2. #define VECTOR_H
  3. #include <stddef.h>
  4. // TODO: Handle error warnings?
  5. // TODO: Implement more useful functions?
  6. typedef struct {
  7. char * data;
  8. size_t element_size;
  9. size_t element_count;
  10. } vector_t;
  11. extern void vector_init(vector_t * vector,
  12. size_t element_size,
  13. size_t element_count);
  14. extern void vector_push(vector_t * vector,
  15. void * data);
  16. extern void vector_pop(vector_t * vector);
  17. extern void * vector_get(const vector_t * const vector,
  18. const size_t element);
  19. extern void vector_set(vector_t * vector,
  20. void * data,
  21. size_t element);
  22. extern void vector_free(vector_t * vector);
  23. #endif