summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--include/stc/algo/csort.h6
-rw-r--r--misc/examples/sort.c13
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++)