strhash.h

来自「基于组件方式开发操作系统的OSKIT源代码」· C头文件 代码 · 共 65 行

H
65
字号
#ifndef _STRHASH_H_INCLUDE#define _STRHASH_H_INCLUDE/* $\Header: /home/ncvs/src/include/strhash.h,v 1.2 1995/05/30 04:54:49 rgrimes Exp $ *//* * *                      Copyright 1990 *               Terry Jones & Jordan Hubbard * *		  PCS Computer Systeme, GmbH. *	             Munich, West Germany * * *  All rights reserved. * *  This is unsupported software and is subject to change without notice. *  the author makes no representations about the suitability of this software *  for any purpose. It is supplied "as is" without express or implied *  warranty. * *  Permission to use, copy, modify, and distribute this software and its *  documentation for any purpose and without fee is hereby granted, provided *  that the above copyright notice appear in all copies and that both that *  copyright notice and this permission notice appear in supporting *  documentation, and that the name of the author not be used in *  advertising or publicity pertaining to distribution of the software *  without specific, written prior permission. * *//* * This is the definition file for hash.c. The plunderer from down-under * did the code, I just helped define the spec. That's why his name gets * to go first. */#define HASH_SZ 97typedef struct _node {    char *key;    void *data;    struct _node *next;} hash_node;typedef struct {    int size;    hash_node **buckets;} hash_table;hash_table *hash_create(int size);void	hash_destroy(hash_table *table, char *key,		     void (*nukefunc)(char *k, void *d));void	*hash_search(hash_table *table, char *key, void *datum,		     void (*replace_func)(void *d));void	hash_traverse(hash_table *table,		      int (*func)(char *k, void *d, void *arg), void *arg);void	hash_purge(hash_table *table, void (*purge_func)(char *k, void *d));#ifdef HASH_STATSextern void hash_stats();#endif#endif /* _STRHASH_H_INCLUDE */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?