GNU gperf is a perfect hash function generator. For a given list of strings, it produces a hash function and hash table, in form of C or C++ code, for looking up a value depending on the input string. The hash function is perfect, which means that the hash table has no collisions, and the hash table lookup needs a single string comparison only.
GNU gperf is highly customizable. There are options for generating
C or C++ code, for emitting
switch statements or nested
ifs instead of a hash table, and for tuning the algorithm
employed by gperf.
Online Manual is available at www.gnu.org/software/gperf/manual/gperf.html
gperf can be found on in the subdirectory
/gnu/gperf/ on your favorite
GNU mirror. For other ways to
obtain gperf, please read
How to get GNU Software.
The latest release is http://ftp.gnu.org/pub/gnu/gperf/gperf-3.0.4.tar.gz
The latest development sources can be obtained through the savannah project.
Please send general FSF & GNU inquiries to
There are also other ways to contact the FSF.
Please send broken links and other corrections or suggestions to
Copyright (C) 1998, 2010 Free Software Foundation, Inc.
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.
Updated: $Date: 2010/01/31 14:50:00 $ $Author: haible $