Advertisement
Guest User

Untitled

a guest
Jun 24th, 2019
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.97 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include "types.h"
  4.  
  5.  
  6. void* vector_new(size_t size) {
  7.  
  8.     ADT_vector_t* ptr = (ADT_vector_t*) malloc(sizeof(ADT_vector_t));
  9.    
  10.     ptr->vector = NULL;
  11.  
  12.     ptr->length = 0;
  13.  
  14.     ptr->element_size = size;
  15.  
  16.     return ptr;
  17. }
  18.  
  19.  
  20.  
  21. void* vector_add(ADT_vector_t* ptr) {
  22.    
  23.     ptr->length = ptr->length + 1;
  24.     ptr->vector = realloc(ptr->vector, ptr->length * ptr->element_size);
  25.     return ptr->vector + (ptr->length-1) * ptr->element_size;
  26. }
  27.  
  28. void vector_free(ADT_vector_t* ptr) {
  29.   if (ptr->vector)
  30.     free(ptr->vector);
  31.   free(ptr);
  32. }
  33.  
  34. size_t vector_length(ADT_vector_t* ptr) {
  35.     return ptr->length;
  36. }
  37.  
  38. size_t element_size(ADT_vector_t* ptr) {
  39.     return ptr->element_size;
  40. }
  41.  
  42. void* vector_ptr(ADT_vector_t* ptr){
  43.  return ptr->vector;
  44. }
  45.  
  46. int comparator(const void* a, const void* b) {
  47.     record_t* algoA = (record_t*) a;
  48.     record_t* algoB = (record_t*) b;
  49.  
  50. return   algoB->UTC - algoA->UTC ;
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement