diff options
| -rw-r--r-- | include/stc/algo/csort.h | 6 | ||||
| -rw-r--r-- | misc/examples/sort.c | 13 |
2 files changed, 10 insertions, 9 deletions
diff --git a/include/stc/algo/csort.h b/include/stc/algo/csort.h index cd7cd847..110aa514 100644 --- a/include/stc/algo/csort.h +++ b/include/stc/algo/csort.h @@ -40,7 +40,7 @@ template params: #include <algorithm> #endif -void testsort(csortval_int *a, size_t size, const char *desc) { +void testsort(csort_int_value *a, size_t size, const char *desc) { clock_t t = clock(); csort_int(a, size); t = clock() - t; @@ -51,7 +51,7 @@ void testsort(csortval_int *a, size_t size, const char *desc) { int main() { size_t i, size = 10000000; - csortval_int *a = (csortval_int*)malloc(sizeof(*a) * size); + csort_int_value *a = (csort_int_value*)malloc(sizeof(*a) * size); if (a != NULL) { for (i = 0; i < size; i++) a[i] = crandom() & (1U << 28) - 1; @@ -61,7 +61,7 @@ int main() { free(a); } }*/ -typedef i_val c_PASTE(csortval_, i_tag); +typedef i_val c_PASTE(c_PASTE(csort_, i_tag), _value); static inline void c_PASTE(cisort_, i_tag)(i_val arr[], intptr_t lo, intptr_t hi) { for (intptr_t j = lo, i = lo + 1; i <= hi; j = i, ++i) { diff --git a/misc/examples/sort.c b/misc/examples/sort.c index 711ba7a6..af74ff51 100644 --- a/misc/examples/sort.c +++ b/misc/examples/sort.c @@ -3,24 +3,25 @@ #include <stdio.h> #include <stc/crandom.h> -typedef long long Elem; -#define fmt_Elem "%lld" #ifdef __cplusplus #include <algorithm> + typedef long long csort_elm_value; #else - #define i_val Elem + #define i_tag elm + #define i_val long long #include <stc/algo/csort.h> #endif +#define fmt_Elem "%lld" -int testsort(Elem *a, size_t size, const char *desc) { +int testsort(csort_elm_value *a, size_t size, const char *desc) { clock_t t = clock(); #ifdef __cplusplus printf("std::sort: "); std::sort(a, a + size); #else printf("csort: "); - csort_Elem(a, size); + csort_elm(a, size); #endif t = clock() - t; @@ -31,7 +32,7 @@ int testsort(Elem *a, size_t size, const char *desc) { int main(int argc, char *argv[]) { size_t i, size = argc > 1 ? strtoull(argv[1], NULL, 0) : 10000000; - Elem *a = (Elem*)malloc(sizeof(*a) * size); + csort_elm_value *a = (csort_elm_value*)malloc(sizeof(*a) * size); if (a == NULL) return -1; for (i = 0; i < size; i++) |
