头文件
结构定义
typedef struct Hash_Table {
int key; //内部标识;/* 我们将使用这个字段作为键 */
int val; //字符名称
UT_hash_handle hh; /* 使这个结构可散列 */
} Hash_Table;
Hash_Table *hash_table = NULL;
Hash_Table *find(int key) { //封装key
Hash_Table *temp;
HASH_ADD_INT(hash_table, &key, temp);
return temp;
}
insert
void insert(int key, int val) {
Hash_Table *it = find(key);
if (it == NULL) {
Hash_Table *temp = malloc(sizeof(Hash_Table));
temp->key = key, temp->val = val;
HASH_ADD_INT(hashtable, key, temp);
} else{
it->val = val;
}
}
delete
void delete_user(struct my_struct *user) {
HASH_DEL( users, user);
}
待学习
https://troydhanson.github.io/uthash/