C语言哈希表 uthash

分享到:

uthash 是一个C语言的哈希表,支持各种结构类型的存储、添加、删除,这些操作都在固定的时间完成,跟哈希表本身的大小无关。键也可以是任何类型的数据。

示例代码:

#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 );
}

项目主页:http://www.open-open.com/lib/view/home/1325143958405

昵    称:
验证码:

相关文档:

  • C语言编译器 Cilk
    Cilk多线程编程技术最早由MIT开 发,是一个基于Gcc编译器的开源项目。后来开发者创建了一个创业公司,推出改进的私有版本,整合到Wind...
  • C++集成开发环境 Code::Blocks
    Code::Blocks (codeblocks)是一个开源、免费、跨平台的c++ IDE。官方网站上称其能满足最苛刻的用户的需求。虽有点夸张,但既然敢这样说,也...
  • Qt实现的C++框架:qtioccontainer
    QtIOCContainer 是一个用Qt实现的C++框架 控制反转概念灵感来自于Spring框架。他使用Qt的元对象系统和插件系统来实现C++的反射机制。...
  • C++ 并发编程指南
    传播知识,介绍 C++ 并发编程。目前国内还没有一本完整介绍 C++11 并发编程的中文书籍,希望本书可以帮助广大的 C++ 开发者学习并发编...
  • 6个开源的cpp开发库
    6个开源的cpp开发库...
  • 很酷的C语言技巧
    C语言常常让人觉得它所能表达的东西非常有限。它不具有类似第一级函数和模式匹配这样的高级功能。但是C非常简单,并且仍然有一些...
  • D语言编译工具 GDC
    GDC 是 D 编程语言的 GCC 前端编译工具。...
  • 如何编写一个PHP的C扩展
    C是静态编译的,执行效率比PHP代码高很多。同样的运算代码,使用C来开发,性能会比PHP要提升数百倍。IO操作如CURL,因为耗时主要在IOWa...
  • C++的MIME库 mimetic
    mimetic 是一个 C++ 的类库,用来处理 MIME 数据。...
  • C++格式化输出库 FastFormat
    FastFormat 是一个C/C++格式化输出的库,输入的参数是类型安全的/范型的/可扩展的。...
  • C序列化或反序列化库:tpl
    tpl是一个开源的小项目,其主要是提供一个可以序列化或反序列化C语言数据的一个API函数库。tpl号称是最有效率的也是最快的,它可以...
  • PHP 的 C 扩展:Zephir
    Zephir 是一个开源的,可以用高级语言安全快速地编写 PHP 的 C 扩展。...
  • Concurrency Control Flow 并发流程控制
    回调函数是指将函数(这里的函数是泛指某一块可执行代码的引用,如C++的仿函数或Java中的接口和对象)作为参数传递给另一个函数。...
  • Facebook Folly源代码分析
    Folly 是 Facebook 的一个开源C++11组件库,它提供了类似 Boost 库和 STL 的功能,包括散列、字符串、向量、内存分配、位处理等,用于满足...
  • C++调用 Python
    采用Python脚本解释器进行脚本编译及脚本解释执行,而MT中主要采用C++编写,C++需要import py_compile模块进行脚本编译。...
  • 开源GUI框架库:Nana C++ Library
    Nana C++ Library,一个纯粹的C++库,让你能完全发挥你的C++知识/技巧/手法来编写GUI,这是用C++开发GUI的一个重大的进步。类似标准库和boost...
  • VC++实现小托盘的处理
    VC++实现小托盘的处理...
  • C语言的KD树实现 kdtree
    kdtree 是一个简单易用的 KD-trees 的 C 语言实现。...
  • 免费的加密/加密C++库和源代码
    免费的加密/加密C++库和源代码...
  • C语言和抽象思维(二)
    上一次我们说到C语言结合抽象思维完成一个非所见即所得的编辑器, 并且我们已经定义了这个编辑器应有的行为, 基本上抽象也已经完...