From 615559a3834044ba4a56e8d896ebead4a3c8fed9 Mon Sep 17 00:00:00 2001 From: Tyge Løvset Date: Wed, 21 Oct 2020 17:20:54 +0200 Subject: Fixed missing _Generic types. Renamed c_print to c_printf, added some usage. --- examples/benchmark.c | 18 +++++++++--------- examples/share_ptr.c | 14 +++++++------- 2 files changed, 16 insertions(+), 16 deletions(-) (limited to 'examples') diff --git a/examples/benchmark.c b/examples/benchmark.c index b9da16f7..9f2467fe 100644 --- a/examples/benchmark.c +++ b/examples/benchmark.c @@ -151,7 +151,7 @@ int rr = RR; erased += M##_ERASE(X, RAND(rr)); \ } \ difference = clock() - before; \ - c_print(0, #M ": time: {:5.02f}, sum: {}, erased {}, size: {}, buckets: {:8}\n", \ + c_printf(0, #M ": time: {:5.02f}, sum: {}, erased {}, size: {}, buckets: {:8}\n", \ (float) difference / CLOCKS_PER_SEC, checksum, erased, (size_t) M##_SIZE(X), (size_t) M##_BUCKETS(X)); \ M##_CLEAR(X); \ } @@ -166,7 +166,7 @@ int rr = RR; for (size_t i = 0; i < N2; ++i) \ erased += M##_ERASE(X, i); \ difference = clock() - before; \ - c_print(0, #M ": time: {:5.02f}, erased {}, size: {}, buckets: {:8}\n", \ + c_printf(0, #M ": time: {:5.02f}, erased {}, size: {}, buckets: {:8}\n", \ (float) difference / CLOCKS_PER_SEC, erased, (size_t) M##_SIZE(X), (size_t) M##_BUCKETS(X)); \ M##_CLEAR(X); \ } @@ -183,7 +183,7 @@ int rr = RR; for (size_t i = 0; i < N3; ++i) \ erased += M##_ERASE(X, RAND(rr)); \ difference = clock() - before; \ - c_print(0, #M ": time: {:5.02f}, erased {}, size: {}, buckets: {:8}\n", \ + c_printf(0, #M ": time: {:5.02f}, erased {}, size: {}, buckets: {:8}\n", \ (float) difference / CLOCKS_PER_SEC, erased, (size_t) M##_SIZE(X), (size_t) M##_BUCKETS(X)); \ M##_CLEAR(X); \ } @@ -199,7 +199,7 @@ int rr = RR; for (int k=0; k<5; k++) M##_FOR (X, i) \ sum += M##_ITEM(X, i); \ difference = clock() - before; \ - c_print(0, #M ": time: {:5.02f}, sum {}, size: {}, buckets: {:8}\n", \ + c_printf(0, #M ": time: {:5.02f}, sum {}, size: {}, buckets: {:8}\n", \ (float) difference / CLOCKS_PER_SEC, sum, (size_t) M##_SIZE(X), (size_t) M##_BUCKETS(X)); \ M##_CLEAR(X); \ } @@ -219,16 +219,16 @@ int main(int argc, char* argv[]) { rr = argc == 2 ? atoi(argv[1]) : RR; seed = time(NULL); - c_print(0, "\nRandom keys are in range [0, 2^%d), seed = %zu:\n", rr, seed); - c_print(0, "\nUnordered maps: %d repeats of Insert random key + try to remove a random key:\n", N1); + c_printf(0, "\nRandom keys are in range [0, 2^{}), seed = {}:\n", rr, seed); + c_printf(0, "\nUnordered maps: {} repeats of Insert random key + try to remove a random key:\n", N1); RUN_TEST(1) - c_print(0, "\nUnordered maps: Insert %d index keys, then remove them in same order:\n", N2); + c_printf(0, "\nUnordered maps: Insert {} index keys, then remove them in same order:\n", N2); RUN_TEST(2) - c_print(0, "\nUnordered maps: Insert %d random keys, then remove them in same order:\n", N3); + c_printf(0, "\nUnordered maps: Insert {} random keys, then remove them in same order:\n", N3); RUN_TEST(3) - c_print(0, "\nUnordered maps: Iterate %d random keys:\n", N4); + c_printf(0, "\nUnordered maps: Iterate {} random keys:\n", N4); RUNX_TEST(4) } diff --git a/examples/share_ptr.c b/examples/share_ptr.c index 5dd52d19..571a80d4 100644 --- a/examples/share_ptr.c +++ b/examples/share_ptr.c @@ -1,7 +1,7 @@ #include #include #include -#include +#include #include typedef struct { cstr_t name, last; } Person; @@ -11,7 +11,7 @@ Person* Person_make(Person* p, const char* name, const char* last) { return p; } void Person_del(Person* p) { - printf("del: %s\n", p->name.str); + c_printf(0, "del: {}\n", p->name.str); c_del(cstr, &p->name, &p->last); } int Person_compare(const Person* p, const Person* q) { @@ -40,7 +40,7 @@ int main() { cvec_pe_push_back(&vec, csptr_pe_share(p)); // Don't forget to share! } c_foreach (i, clist_pe, queue) - printf(" %s\n", i.val->get->name.str); + c_printf(0, " {}\n", i.val->get->name.str); puts("Sort and pop 3:"); clist_pe_sort(&queue); @@ -52,18 +52,18 @@ int main() { puts("Sorted queue:"); c_foreach (i, clist_pe, queue) - printf(" %s\n", i.val->get->name.str); + c_printf(0, " {}\n", i.val->get->name.str); puts("Sorted vec:"); c_foreach (i, cvec_pe, vec) - printf(" %s\n", i.val->get->name.str); + c_printf(0, " {}\n", i.val->get->name.str); Person lost; Person_make(&lost, "Name 5", "Last 5"); csptr_pe ptmp = {&lost, NULL}; // share pointer without counter - OK. clist_pe_iter_t lit = clist_pe_find(&queue, ptmp); Person_del(&lost); - if (lit.val) printf("Found: %s\n", lit.val->get->name.str); + if (lit.val) c_printf(0, "Found: {}\n", lit.val->get->name.str); - printf("use %ld\n", *joe.use_count); + c_printf(0, "use {}\n", *joe.use_count); csptr_pe_del(&joe); puts("Destroy queue:"); -- cgit v1.2.3