myhash.cpp

来自「我的一个利用有限状态机的正则表达式的实现。」· C++ 代码 · 共 29 行

CPP
29
字号
#include "MyHash.h"
#include <stdlib.h>

HASH_TABLE* new_hash_table() {

	HASH_TABLE* h = (HASH_TABLE*) malloc( sizeof(HASH_TABLE) );
	for( int i = 0; i< HASH_TABLE_SIZE; i++ ) {
		h->table[i].next = NULL;
		h->table[i].v = NULL;
	}

	return h;
}

void release_hash_table( HASH_TABLE* h, RELEASE_HASH_VALUE* rf ) {

	MyHashTable::LLNode* n = NULL, *next = NULL;

	for( int i = 0; i < HASH_TABLE_SIZE; i++ ) {

		n = h->table[i].next;
		while( n ) {
			next = n->next;
			rf( n->v );
			free( n );
			n = next;
		}		
	}
}

⌨️ 快捷键说明

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