#define hash_mult 101 unsigned long cstr_hash(char *s) { unsigned long rv = 0; for (; *s; ++s) rv = rv * hash_mult + *s; return rv; }