可以从 GitHub project page 下载uthash
下载地址:https://github.com/troydhanson/uthash
uthash使用范例
Example 1. Adding an item to a hash.添加项目到hash表
#include "uthash.h" struct my_struct { int id; /* we'll use this field as the key */ char name[10]; UT_hash_handle hh; /* makes this structure hashable */ }; struct my_struct *users = NULL; void add_user(struct my_struct *s) { HASH_ADD_INT( users, id, s ); }
Example 2. Looking up an item in a hash. 在hash表中查找指定项
struct my_struct *find_user(int user_id) { struct my_struct *s; HASH_FIND_INT( users, &user_id, s ); return s; }
Example 3. Deleting an item from a hash.从hash表中删除项目
void delete_user(struct my_struct *user) { HASH_DEL( users, user); }