Go to the source code of this file.
|
| unsigned char * | _at (unsigned char *base, size_t i, size_t memb_size) |
| |
| void | _ft_qsort (unsigned char *base, size_t nmemb, size_t memb_size, t_compar compar) |
| |
| bool | ft_qsort (void *base, size_t nmemb, size_t memb_size, t_compar compar) |
| |
◆ _at()
| unsigned char* _at |
( |
unsigned char * |
base, |
|
|
size_t |
i, |
|
|
size_t |
memb_size |
|
) |
| |
Definition at line 20 of file ft_qsort.c.
22 return (base + (i * memb_size));
◆ _ft_qsort()
| void _ft_qsort |
( |
unsigned char * |
base, |
|
|
size_t |
nmemb, |
|
|
size_t |
memb_size, |
|
|
t_compar |
compar |
|
) |
| |
Definition at line 25 of file ft_qsort.c.
31 if (base == NULL || nmemb <= 1 || memb_size <= 0 || compar == NULL)
37 if (0 < compar(base,
_at(base, i, memb_size)))
39 _at(base, ++i_last, memb_size), memb_size);
42 ft_swap(base,
_at(base, i_last, memb_size), memb_size);
44 _ft_qsort(base, i_last, memb_size, compar);
45 if (2 <= (nmemb - i_last - 1))
46 _ft_qsort(
_at(base, i_last + 1, memb_size), nmemb - i_last - 1,
void ft_swap(void *a, void *b, size_t bytes)
void _ft_qsort(unsigned char *base, size_t nmemb, size_t memb_size, t_compar compar)
unsigned char * _at(unsigned char *base, size_t i, size_t memb_size)
◆ ft_qsort()
| bool ft_qsort |
( |
void * |
base, |
|
|
size_t |
nmemb, |
|
|
size_t |
memb_size, |
|
|
t_compar |
compar |
|
) |
| |
Definition at line 50 of file ft_qsort.c.
54 _ft_qsort((
unsigned char *)base, nmemb, memb_size, compar);
bool can_mulp(size_t a, size_t b)