Advertisement
Guest User

Untitled

a guest
Feb 21st, 2017
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.47 KB | None | 0 0
  1.  $ cat -e malloc.h
  2. /*$
  3. ** malloc.h for  in /home/bazin_q/rendu/PSU/PSU_2016_malloc/include$
  4. **$
  5. ** Made by Quentin Bazin$
  6. ** Login   <bazin_q@epitech.net>$
  7. **$
  8. ** Started on  Sat Jan 28 19:46:16 2017 Quentin Bazin$
  9. ** Last update Sat Jan 28 19:46:16 2017 Quentin Bazin$
  10. */$
  11. #ifndef MALLOC_H_$
  12. # define MALLOC_H_$
  13. $
  14. # include <stdbool.h>$
  15. # include <stddef.h>$
  16. $
  17. # define TOTAL_BLOCK_SIZE(size) (size + sizeof(t_block_header) + sizeof(void *))$
  18. $
  19. typedef struct          s_block_header$
  20. {$
  21.   size_t            size;$
  22.   struct s_block_header     *next;$
  23.   struct s_block_header     *previous;$
  24.   bool              is_free;$
  25.   size_t            mem_available;$
  26. } __attribute__((packed))   t_block_header;$
  27. $
  28. typedef enum        e_block_type$
  29. {$
  30.   BLOCK_NEW,$
  31.   BLOCK_FREE,$
  32.   BLOCK_EMPTY$
  33. }           t_block_type;$
  34. $
  35. typedef struct      s_block$
  36. {$
  37.   t_block_header    header;$
  38.   t_block_type      type;$
  39.   void          *addr;$
  40.   size_t        size;$
  41. }           t_block;$
  42. $
  43. void    my_putchar(char c);$
  44. int my_putstr(const char *str);$
  45. void    my_putnbr_base(long int nb, char *base);$
  46. void    my_putaddr(void *ptr, char *label);$
  47. $
  48. extern void *g_first_block_addr;$
  49. $
  50. bool    malloc_get_new_block(t_block *block);$
  51. void    *malloc_get_previous_block(void *block_addr);$
  52. void    malloc_setup_header(t_block *block);$
  53. void    malloc_set_header_data(t_block *block);$
  54. $
  55. void    *malloc(size_t size);$
  56. void    *calloc(size_t nmemb, size_t size);$
  57. void    *realloc(void *ptr, size_t size);$
  58. void    free(void *ptr);$
  59. $
  60. void    show_alloc_mem();$
  61. $
  62. #endif /* !MALLOC_H_ */$
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement