From c8bf38e5fb717d40635a2a89b22ed71b0de4266b Mon Sep 17 00:00:00 2001 From: Toni Uhlig Date: Tue, 1 Dec 2020 13:33:34 +0100 Subject: Squashed 'dependencies/uthash/' content from commit 8e67ced git-subtree-dir: dependencies/uthash git-subtree-split: 8e67ced1d1c5bd8141c542a22630e6de78aa6b90 --- tests/test61.c | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 tests/test61.c (limited to 'tests/test61.c') diff --git a/tests/test61.c b/tests/test61.c new file mode 100644 index 000000000..bbb3d1079 --- /dev/null +++ b/tests/test61.c @@ -0,0 +1,53 @@ +#include +#include "utarray.h" + +static int strsort(const void *_a, const void *_b) +{ + const char *a = *(const char* const *)_a; + const char *b = *(const char* const *)_b; + return strcmp(a,b); +} + +int main() +{ + UT_array *strs; + const char *s, **p; + + utarray_new(strs,&ut_str_icd); + + s = "hello"; + utarray_push_back(strs, &s); + s = "world"; + utarray_push_back(strs, &s); + s = "one"; + utarray_push_back(strs, &s); + s = "two"; + utarray_push_back(strs, &s); + s = "three"; + utarray_push_back(strs, &s); + + p = NULL; + while ( (p=(const char**)utarray_next(strs,p)) != NULL ) { + s = *p; + printf("%s\n",s); + } + + printf("sorting\n"); + utarray_sort(strs,strsort); + + p = NULL; + while ( (p=(const char**)utarray_next(strs,p)) != NULL ) { + s = *p; + printf("finding %s\n",s); +#ifdef __cplusplus + p = (const char**)utarray_find(strs,&s,strsort); +#else + p = utarray_find(strs,&s,strsort); +#endif + printf(" %s\n", (p != NULL) ? (*p) : "failed"); + } + + utarray_free(strs); + + return 0; +} -- cgit v1.2.3