singe/thirdparty/uthash/tests/test20.c
2023-10-23 19:38:18 -05:00

34 lines
825 B
C

#include <string.h> /* memcpy */
#include <stdlib.h> /* malloc */
#include <stdio.h> /* printf */
#include "uthash.h"
struct my_struct {
char bkey[5]; /* "binary" key */
int data;
UT_hash_handle hh;
};
int main()
{
struct my_struct *s, *t, *bins = NULL;
char binary[5] = {'\3','\1','\4','\1','\6'};
/* allocate our structure. initialize to some values */
s = (struct my_struct*)calloc(1UL,sizeof(struct my_struct));
if (s == NULL) {
exit(-1);
}
memcpy(s->bkey, binary, sizeof(binary));
/* add to hash table using general macro */
HASH_ADD( hh, bins, bkey, sizeof(binary), s);
/* look up the structure we just added */
HASH_FIND( hh, bins, binary, sizeof(binary), t );
if (t != NULL) {
printf("found\n");
}
return 0;
}